- Największą praktyczną zmianą jest inteligentne przetwarzanie zapytań: silnik koryguje plan w trakcie wykonania, więc część zapytań przyspiesza bez zmian w kodzie aplikacji.
- Always Encrypted z bezpiecznymi enklawami pozwala liczyć na danych zaszyfrowanych — administrator serwera nie widzi ich zawartości.
- Wirtualizacja danych umożliwia zapytanie do źródła zewnętrznego bez kopiowania go do bazy, co usuwa całą klasę zadań nocnego przenoszenia danych.
- Wersja 2019 pracuje także na systemie Linux i w kontenerach — to zmienia sposób budowania środowisk testowych, nie samą aplikację.
Czym jest SQL Server 2019
Program SQL Server 2019 oferuje nowatorskie funkcje zapewniające bezpieczeństwo i zgodność z przepisami, najlepszą w branży wydajność, dostępność zasobów o znaczeniu krytycznym oraz zaawansowaną analitykę bez względu na obciążenie danymi i wbudowaną obsługę danych Big Data.
Przede wszystkim SQL Server 2019 integruje się z chmurą Azure. Poza tym oferuje zaawansowane funkcje analizy danych. Dodatkowo poprawia wydajność i bezpieczeństwo baz danych.
Następnie SQL Server 2019 wprowadza innowacyjne rozwiązania. Na przykład Big Data Clusters pozwalają na łączenie danych z różnych źródeł. Co więcej, usprawnia to procesy biznesowe.
Pierwszy obszar działa po samym podniesieniu poziomu zgodności bazy. Trzy pozostałe wymagają decyzji projektowej i testów.
Elementy platformy, z których najczęściej korzystają rozwiązania magazynowe i logistyczne:
- Silnik bazy danych — tabele, indeksy, procedury składowane i wyzwalacze, czyli to, na czym opiera się codzienna praca aplikacji.
- SQL Server Agent — harmonogram zadań: kopie zapasowe, przeliczenia nocne, wysyłka zestawień.
- Reporting Services — projektowanie i udostępnianie raportów bez pisania kodu aplikacji.
- Integration Services — przenoszenie i przekształcanie danych między systemami.
- Mechanizmy kopii zapasowych — tryb odtwarzania, dziennik transakcji i odtwarzanie do wskazanego momentu.
Główne cechy wersji 2019
SQL Server 2019 to potężne narzędzie bazodanowe oferowane przez Microsoft. Umożliwia ono użytkownikom analizowanie danych z całego środowiska bez konieczności ich przenoszenia czy replikacji. Dzięki temu rozwiązaniu można łatwo przełamać bariery między różnymi źródłami informacji. Ponadto system ten zapewnia elastyczność w wyborze języka programowania i platformy, wspierając rozwiązania open source. Użytkownicy mogą uruchamiać SQL Server na kontenerach Linux z obsługą Kubernetes lub na systemie Windows.
Jedną z istotnych zalet SQL Server 2019 jest jego wydajność. System oferuje przełomową skalowalność i szybkość działania, co przekłada się na poprawę stabilności i czasu odpowiedzi bazy danych. Co więcej, nie wymaga to wprowadzania zmian w aplikacjach. SQL Server 2019 zapewnia również wysoką dostępność dla krytycznych aplikacji biznesowych, hurtowni danych oraz jezior danych. Warto podkreślić, że system ten został uznany za najmniej podatny na ataki w ciągu ostatnich dziewięciu lat, co świadczy o jego wysokim poziomie bezpieczeństwa.
SQL Server 2019 wyposażony jest w zaawansowane narzędzia do raportowania. Użytkownicy mogą korzystać z możliwości SQL Server Reporting Services oraz Power BI Report Server, co pozwala na tworzenie interaktywnych raportów dostępnych na różnych urządzeniach. Microsoft wprowadził również model pay-as-you-go dla SQL Server 2019, umożliwiający płacenie tylko za faktycznie wykorzystane zasoby. System ten, wspierany przez Azure Arc, rozszerza usługi Azure na środowiska lokalne i pozwala na zarządzanie infrastrukturą SQL Server z poziomu portalu Azure.
| Obszar | Wcześniej | W wersji 2019 |
|---|---|---|
| Plan zapytania | Ustalany raz, na podstawie oszacowań sprzed wykonania | Korygowany w trakcie wykonania, gdy oszacowanie okaże się błędne |
| Szyfrowanie kolumn | Dane odszyfrowywane po stronie aplikacji | Operacje porównania i zakresu wykonywane na danych zaszyfrowanych |
| Dane spoza bazy | Kopiowanie do tabeli pośredniej przed analizą | Zapytanie kierowane wprost do źródła zewnętrznego |
| System operacyjny | Wyłącznie Windows Server | Windows, dystrybucje Linuksa oraz kontenery |
| Odbudowa indeksu | Operacja niepodzielna, przy przerwaniu zaczynana od nowa | Możliwa do wstrzymania i wznowienia |
| Kopia zapasowa | Kompresja bez wsparcia sprzętowego | Krótszy czas wykonania przy kopiach dużych baz |
Zestawienie dotyczy różnic odczuwalnych w eksploatacji. Pełna lista zmian obejmuje także elementy istotne wyłącznie przy budowie rozwiązań analitycznych.
Co sprawdzić, zanim baza zostanie przeniesiona na wersję 2019:
- Poziom zgodności bazy. Sama aktualizacja instancji nie włącza nowego sposobu przetwarzania zapytań — trzeba podnieść poziom zgodności, a to zmienia plany wykonania.
- Zapytania wrażliwe na plan. Warto zapisać czasy wykonania najcięższych zapytań przed aktualizacją, żeby mieć punkt odniesienia.
- Zgodność sterowników. Aplikacje łączące się starszymi bibliotekami mogą wymagać podniesienia wersji sterownika.
- Edycja licencji. Część funkcji dostępnych wcześniej wyłącznie w edycji Enterprise trafiła do Standard — warto sprawdzić, czy posiadana edycja wystarczy.
- Kopia i plan wycofania. Poziomu zgodności nie da się cofnąć bez skutków dla planów zapytań, więc kopia sprzed operacji jest jedyną drogą powrotu.
Rola bazy danych w systemie magazynowym
W rozwiązaniach logistycznych baza danych nie jest wyłącznie miejscem składowania. To ona rozstrzyga, czy dwie osoby skanujące ten sam towar w tej samej chwili zobaczą spójny stan, i to ona pilnuje, żeby przerwane połączenie z terminalem nie zostawiło dokumentu w połowie zapisanego.
Dlatego przy systemie magazynowym istotniejsze od nowych funkcji analitycznych bywają rzeczy mniej efektowne: sposób blokowania rekordów, tryb odtwarzania i czas wykonania kopii zapasowej. Magazyn pracujący na trzy zmiany nie ma okna serwisowego, w którym baza mogłaby być niedostępna przez godzinę.
Wersja 2019 poprawia tu dwie rzeczy odczuwalne w eksploatacji. Odbudowę indeksu można wstrzymać i wznowić, więc nie trzeba jej mieścić w jednym oknie. Kompresja kopii zapasowej działa szybciej, co przy bazie liczonej w setkach gigabajtów skraca operację wykonywaną codziennie.
Objawy, po których poznać przeciążoną bazę
Skargi użytkowników rzadko brzmią „baza zwalnia”. Brzmią raczej: skaner długo czeka na potwierdzenie, raport miesięczny nie chce się otworzyć, zapisanie dokumentu trwa kilkanaście sekund zamiast jednej. Każdy z tych objawów ma inną przyczynę i inne rozwiązanie.
Najczęstsze źródło problemu to brak indeksu na kolumnie, po której filtruje aplikacja — wtedy silnik przegląda całą tabelę zamiast wskazanego fragmentu. Drugie w kolejności są zapytania raportowe uruchamiane na bazie produkcyjnej w godzinach pracy magazynu. Trzecie to zbyt szeroki zakres dat ustawiony jako domyślny na ekranie zestawienia.
Warto rozstrzygnąć to pomiarem, zanim padnie decyzja o rozbudowie serwera. Dołożenie pamięci pomaga wtedy, gdy problemem jest rozmiar danych roboczych; przy brakującym indeksie nie zmienia niczego poza rachunkiem.