Jakiś czas temu Microsoft wydał Service Pack 1 do swojego flagowego produktu bazodanowego jakim bez wątpienia jest SQL Server 2016. Była to bardzo wyczekiwana aktualizacja naprawiająca zgłaszane przez użytkowników błędy i dodająca parę funkcjonalności. Microsoft oprócz tychże funkcjonalności (które mimo wszystko bardzo pozytywnie zaskoczyły) wywrócił świat bazodanowy do góry nogami. Dlaczego? Otóż wraz z Service Pack 1 edycja Standard silnika bazodanowego zawiera wszystkie funkcjonalności edycji Enterprise! Oprócz tego darmowa edycja Express również zawiera niemal wszystkie funkcjonalności Enterprise!Postanowiłem napisać parę słów na ten temat dzieląc się z Wami moimi spostrzeżeniami – zapraszam do lektury!
Wiele osób (w tym ja) przeżyło nie mały szok czytając o tym, o czym traktuje niniejszy wpis. W waszych głowach może pojawić się pytanie dlaczego Microsoft tak postąpił – odpowiedź nie jest jednoznaczna, jednakże postaram się napisać parę słów na ten temat. Przede wszystkim ruch ten oznacza agresywną kampanię rynkową firmy z Redmond – dzięki tym wszystkim funkcjonalnościom bardzo wiele nowych firm zdecyduje się na zakup SQL Server. Mając w głowie koszty licencji niejednokrotnie przedsiębiorstwa będą chciały zakupić SQL Server Standard zamiast drogiego odpowiednika firm konkurencyjnych. Mimo często powtarzanych sloganów o tym, że oprogramowanie i szeroko pojęte IT to inwestycja, a nie koszt dobrze wiemy jakimi kryteriami myśli większość osób decyzyjnych – podczas spotkań sprzedażowych sam niejednokrotnie doświadczyłem, iż funkcjonalności funkcjonalnościami, ale ile to wszystko kosztuje i dlaczego tak drogo 🙂 Dlatego też wydaje mi się, że wspomnieni decydenci mimo wszystko będą skłonne zapłacić te stosunkowo niewielkie pieniądze za wersję standard SQL Servera jeśli się dowiedzą, że odpowiadająca licencja innego produktu jest wielokrotnie droższa.
Z drugiej zaś strony Microsoft stworzył nową wizję dla programistów, którzy tak naprawdę dostali możliwość używania każdej z funkcjonalności w swoich aplikacjach bez konieczności “martwienia się” jaką wersję serwera będzie musiał mieć klient aby aplikacji używać. Z mojego punktu widzenia jest to bardzo ważne, powiedziałbym wręcz kluczowe i w wielu przypadkach uprości pracę programistów nad aplikacjami biznesowymi i nie tylko. Kolejne pytanie jakie się pojawia to “W takim razie jaka jest teraz różnica pomiędzy wersjami SQL Servera” – odpowiedź jest prosta i zwięzła – zasoby. Wersje różnią się między sobą limitami używania zasobów i tak cytując oficjalne zestawienie udostępnione przez Microsoft (które możecie znaleźć tutaj):
Najbardziej uciążliwy dla użytkowników może być fakt ograniczenia pamięci operacyjnej – odzwierciedlenie tych “nastrojów” znajdziemy na różnego rodzaju blogach i forach gdzie ludzie zaczęli narzekać na powyższe limity – ale hej dostaliśmy świetne funkcjonalności niejako ZA DARMO – nie bądźmy zachłanni! Na ten moment w bardzo wielu istniejących i nowych wdrożeniach będzie można w 100% wykorzystać możliwości Enterprise bez rozszerzania edycji. Pytanie tylko co na to wszystko powie Oracle? Być może doczekamy się odpowiedzi już niedługo ale na ten moment możemy się jedynie cieszyć.
Przechodząc już do technicznej części artykułu, przedstawmy sobie jakie nowości oprócz wspomnianych powyżej wprowadza service pack, wypiszmy kilka z nich które uznałem za jedne z ciekawszych:
- Database Cloning – czyli nowa komenda DBCC, która klonuje bazę danych tj. jej schemat, metadane statystyki nie kopiując przy tym danych. Ma ona za zadanie pomóc w rozwiązywaniu problemów – bardzo interesująca funkcjonalność, której nie omieszkam przetestować i podzielić się z wami w nowym wpisie
- CREATE OR ALTER – czyli możliwość skróconego zapisu tworzenia bądź edycji w zależności od tego czy obiekt istnieje procedur, wyzwalaczy, funkcji czy widoków. Chciałoby się powiedzieć NARESZCIE! Bardzo miłe udogodnienie tak jak opisywane wcześniej przeze mnie DROP IF EXISTS tylko szkoda, że nie zostało to wprowadzone dla tabel, ale mimo wszystko bardzo miła funkcjonalność.
- Nowa opcja zapytania USE HINT – pozwalająca użyć wskazówki w zapytaniu bez konieczności posiadania wysokich uprawnień sysadmin.
- Informacja o tym czy Instant File Initialization jest włączone w widokach dynamicznych – funkcjonalność, która wcześniej była możliwa do sprawdzenia “okrężną drogą” obecnie jest widoczna w jednym z widoków systemowych
- Zmiany w równoległym INSERT…SELECT dla lokalnych tabel tymczasowych- obecnie będzie trzeba wyspecyfikować hint TABLOCK aby umożliwić równoległe wstawianie danych do tabeli tymczasowej (przed Service Pack 1 występował problem ze stronami PFS)
- Automatyczny TABLOCK dla BULK INSERT do stert
Całość informacji znajdziecie na stronach Microsoft klikając tutaj. Część z tych funkcjonalności z całą pewnością stanie się osobnym artykułem, który umieszczę w serii Poznaj SQL Server. Tak więc kończąc mój wywód na temat najnowszej aktualizacji SQL Server – zapamiętajcie ten czas bo nadeszła prawdziwa rewolucja 🙂
- Avoiding Issues: Monitoring Query Pushdowns in Databricks Federated Queries - October 27, 2024
- Microsoft Fabric: Using Workspace Identity for Authentication - September 25, 2024
- Executing SQL queries from Azure DevOps using Service Connection credentials - August 28, 2024
Dosłownie przed chwilą wróciłem ze spotkania trójmiejskiej grupy PLSSUG, na której miałem możliwość wysłuchania wystąpienia prezesa tego stowarzyszenia, Pawła Potasińskiego. Opowiadał o nowościach jakie wprowadził Microsoft w dodatku SP1, i co więcej, P.Potasinski demonstrował te nowe funkcjonalności na konkretnych przykładach. To robiło wrażenie, naprawdę. Nawet na prezesie, który był wyraźnie zauroczony zmianami w SP1 🙂
Ten Service Pack to faktycznie rewolucja. Zastanawiam się czy wpłynie to na cenę SQL Server w wersji Standard. Gratuluję świetnego wpisu 🙂 warto też zajrzeć na blog Bartka Graczyka: https://sql4you.info/2016/11/27/dlaczego-mimo-wszystko-warto-wybrac-edycje-enterprise-czesc-1/ 🙂
Ostatnio w ogóle dobrze się wiedzie SQL Server-owi, co widać na tym wykresie http://db-engines.com/en/ranking_trend
Nowości w wersji 2016, teraz duże zmiany dostarczone przez SP1, możliwość uruchomienia SQL Server-a na Linuxie, to na pewno pozytywnie wpłynie na popularność tego systemu bazodanowego. Ciekawi mnie jaka będzie odpowiedź innych firm np. Oracle, IBM, itd., w związku z obecną rewolucją SP1.