Nowości od Małomiękkiego

Po raz kolejny firma Microsoft wypuszcza nową wersję SQL Servera. Tym razem 2016.

Oczywiście jak już nowa wersja, to oczywiście nowe opcje, możliwości i ulepszenia. Rzućmy okiem, co tym razem przynosi nowa wersja (póki co jeszcze nie można jej kupić, ale można pobrać do testów).

Samo gęste siedzi, jakże by inaczej, w silniku bazy danych, więc skupimy się na nim:

1. Poprawione indeksy CODB (CODB to dane uporządkowane w trybie „columnar” – jeszcze chyba nie ma dobrego, popularnego polskiego słówka na ten tryb składowania danych). Bez wchodzenia zbyt głęboko w szczegóły, od teraz indeksy te będą działać szybciej przy odczycie oraz będą bardziej elastyczne (i również szybsze) przy zapisie.

2. Liczne usprawnienia technologii Hekaton (nie wiem, czy MS jeszcze w ogóle chce używać tej nazwy), czyli po naszemu In-Memory OLTP. Lepsza obsługa wielojęzyczności, współbieżności, łatwiejsze analizowanie wydajności zapytań, lepsza integracja z PowerShell i wiele innych.

3. Statystyki wykonania zapytań w czasie rzeczywistym. Do tej pory mieliśmy do wyboru albo zobaczyć przewidywany plan wykonania zapytania (przed jego wykonaniem), albo wykonać zapytanie, odczekać do końca i dopiero wtedy zobaczyć jaki był faktyczny plan zapytania (wraz z wszelkimi informacjami statystycznymi typu ilości wierszy, czasy wykonania poszczególnych kroków itd). Od wersji 2016 będzie można sobie obserwować plan zapytania w czasie rzeczywistym, bez konieczności czekania na zakończenie zapytania.

4. Magazyn zapytań („Query Store„), czyli możliwość odpytywania metadanych serwera o historyczne plany zapytań oraz ich łatwego porównywania i analizy. Dzięki temu – przynajmniej teoretycznie – będzie można łatwiej zrozumieć co i w jaki sposób wpływa na wydajność wykonania poszczególnych zapytań, kiedy i dlaczego plany zapytań się zmieniają i tak dalej. To już było wcześniej (za pomocą DMV), ale teraz ma był łatwiej i wygodniej.

5. Historyzacja danych: dotychczas to programista musiał zadbać o to, żeby poprawnie rejestrować informacje historyczne – na ogół tworzyło się osobną tabelę z sufiksem „_history” (lub podobnym) i tam logowało zmiany w tabeli głównej. Powodowało to brak standardyzacji oraz ciągłe wynajdywanie koła. Od wersji 2016 będzie można używać tzw. „Temporal Tables”, nowego rodzaju tabel, które będą rejestrować historię zmian w tabeli głównej automatycznie.

6. Kopie zapasowe lokalnych danych do chmury Azure: bez wnikania w szczegóły, od teraz będzie można wykonać kopię niektórych danych lokalnych do instancji serwera Azure.

7. Natywna obsługa JSON: od teraz będzie można zwracać wyniki zapytania SQL w formacie JSON – a więc ogromne pole do popisu dla programistów tworzących wtyczki do innych systemów typu NoSQL (MongoDB, ToroDB, CouchDB i wiele innych).

8. Możliwość wykonania operacji TRUNCATE na pojedynczej partycji (a nie tylko na całej tabeli) – coś, co od dawna było dostępne u konkurencji, wreszcie trafia pod strzechy microsoftowe.

9. Maskowanie danych: możliwość ustawienia maski na dane wrażliwe. Maska zastąpi zwracane dane, jeżeli zapytanie będzie wykonane przez nieuprawnionego użytkownika. Można w ten sposób na przykład „wygwiazdkować” hasła, zastąpić kody pocztowe maską XX-XXX albo pokazać „Adama Kowalskiego” jako „A*** K*******” i tak dalej. Fajna sprawa, bo dotychczas trzeba było kombinować dookoła (widoki, funkcje etc).

Wyżej wymienione to tylko niektóre (te – moim zdaniem – najbardziej interesujące) usprawnienia w wersji 2016. Moje dwa ulubione to obsługa JSON oraz TRUNCATE pojedynczej partycji – jedno może ułatwić kooperację z innymi silnikami danych, a drugie – zoptymalizować proces ładowania warstwy Stage hurtowni. Trzeba bowiem pamiętać o tym, że dziś powoli odchodzi się od hurtowni danych opartych stricte na RDBMS na rzecz rozwiązań typu Hadoop czy Mongo – i to nie tylko ze względu na wydajność, ale głównie na koszty licencji.

Na koniec dzisiejszego wpisu małe spostrzeżenie: co prawda wersja 2016 już na horyzoncie, ale większość znanych mi firm do dziś używa wersji 2005 lub 2008 (czyli dwie lub trzy wersje „za Murzynami”) i nie czują specjalnego parcia na migrację do najnowszych fontann i wodotrysków.

W końcu tabelka to tabelka.

C’nie?

Autor: xpil

Po czterdziestce. Żonaty. Dzieciaty. Komputerowiec. Krwiodawca. Emigrant. Rusofil. Lemofil. Sarkastyczny. Uparty. Mól książkowy. Ateista. Apolityczny. Nie oglądam TV. Uwielbiam matematykę. Walę prosto z mostu. Gram na paru instrumentach. Lubię planszówki. Słucham bluesa, poezji śpiewanej i kapel a’capella. || Kliknij tutaj po więcej szczegółów ||

Dodaj komentarz

Bądź pierwszy!

Powiadom o
avatar
wpDiscuz