Książka o tym o ile lepszy jest serwer SQL 2005 od wersji 2000
Firma Microsoft aż 5 lat kazała czekać swoim klientom na nową wersję serwera SQL. W roku 2005 wersja 2000 była już wyraźnie przestarzała i brakowało w niej wielu podstawowych funkcji. Nic więc dziwnego, że premierze wersji 2005 towarzyszyły wyjątkowe emocje. Jeżeli chcesz się dowiedzieć jak dużą wagę przykładał Microsoft do tej premiery, przeczytaj tę książkę.
Pomimo, że nie wszyscy autorzy tej książki są pracownikami Microsoftu, to są jednomyślni w kwestii pozytywnej oceny serwera SQL 2005. W tym miejscu warto zaznaczyć że książka powstała na podstawie przedpremierowej wersji CTP serwera SQL, a więc zanim trafił on do produkcyjnego użycia. Stąd optymistyczne wypowiedzi autorów:
„Aktualnie nie ma możliwości zdefiniowania serwera zewnętrznego (chodzi o własny serwer usługi raportowania błędów), lecz niewątpliwie funkcja ta zostanie udostępniona w kolejnych wersjach produktu.”
„Przykłady … będą dotyczyć nowej przykładowej i znacznie ulepszonej bazy danych AdventureWorks… Baza zawiera bardziej realistyczne dane i jest zdecydowanie lepiej znormalizowana.”
Dziś wiemy już jak sprawdził się serwer SQL 2005 i ile po drodze przeszedł zmian (włączając w to niechlubny pakiet SP2). W rezultacie niektóre informacje stały się nieaktualne — dotyczy to na przykład opisu raportów konsoli SSMS.
Kolejne rozdziały książki poświecone są:
- Instalacji i zarządzaniu serwerem SQL 2005 — po ich przeczytaniu nikt, nawet jeżeli nie pracował z wcześniejszymi wersjami serwera SQL nie będzie miał problemów z jego zainstalowaniem i używaniem narzędzi administracyjnych.
- Nowościom w języku T-SQL — poświecono im aż dwa rozdziały i rzeczywiście zostały one przedstawione szczegółowo (dowiemy się z nich między innymi: jak stosować synonimy do sterowania łańcuchami własności obiektów, że możliwość wyłączania indeksów została dodana w celu uproszczenia instalacji pakietów SP i innych poprawek, oraz jaki wpływ na wydajność zapytań ma klauza TERTIARY_WEIGHTS), ale niestety z pewnymi brakami. Na przykład tylko tym że książka była napisana przed premierą serwera SQL można wytłumaczyć zdziwienie autora działaniem klauzuli TABLESAMPLE (dokładnie zwracaniem przez nią za każdym razem innej liczby wierszy).
- Integracji serwera SQL 2005 z platformą .NET — w dwóch rozdziałach zawarto dokładny opis zalet i wad („programiści nie powinni ulegać pokusie używania SQL Servera jako składnicy zserializowanych obiektów … każda próba użycia w zapytaniach właściwości w roli predykatów znacznie obniży wydajność pracy serwera ” a kilka stron dalej znajdujemy rozwinięcie tej tezy: „Jeśli typ będzie uporządkowany bajtowo, SQL Server przyjmie założenie, że porównywanie bajtów instancji typu w wersji zserializowanej będzie równoznaczne z porównywaniem instancji tego typu … domyślnie parametr IsByteOrdered ma wartość false) używania obiektów .NET po stronie serwera SQL. Oczywiście zalet jest więcej niż wad — opisana została m.in. implementacja po stronie serwera SQL tablic (możliwość przekazywania danych tabelarycznych jako parametrów procedur została dodana dopiero w wersji 2008) . W książce wspominano nawet o modelu bezpieczeństwa opartym na uprawnieniach kodu (CAS).
- Natywnej obsłudze typu XML — kolejne dwa rozdziały przedstawiają nie tylko sposób przechowywania dokumentów XML w tabelach i budowę indeksów XML, ale również metody typu XML i najważniejsze informacje na temat języków XQuery oraz XPatch.
Usłudze SSRS (usłudze raportowania) — w ramach jednego rozdziału autorom udało się opisać architekturę usługi SSRS, techniki tworzenia raportów (w tym klasyczną sztuczkę pozwalająca zmieniać kolory tła parzystych i nieparzystych wierszy) a nawet użycie jako źródła danych usług sieciowych XML.
- Usłudze SSAS (usłudze analitycznej) — osoby które nie pracowały z bazami analitycznymi dowiedzą się jak tworzyć ich projekty w BIDS (: np. zapoznają się z okienkiem Commands and Oprions, czyli mini edytorem tekstu pozwalającym formatować dane), a użytkownicy wcześniejszej wersji serwera OLAP poznają niektóre z wielu zmian, np. możliwość tworzenia relacji typu wiele do wielu pomiędzy grupami miar a wymiarami przy użyciu atrybutu MeasureExpression.
- Nowemu modelowi zabezpieczeń serwera SQL 2005 — na jego temat dostępnych jest mnóstwo artykułów mniej więcej odpowiadających przedstawionemu w książce opisowi, tylko funkcje kryptograficzne zostały w niej zaprezentowane trochę dokładniej.
- Usłudze Service Broker — po krótkim wprowadzeniu opisane zostały dwa przykłady tworzenia od podstaw aplikacji (lokalnej i rozproszonej) korzystających z tej usługi do asynchronicznej komunikacji z serwerem SQL.
Usłudze SQL Server Agent i jej wykorzystaniu do automatyzacji zadań administracyjnych.
Usłudze SSIS — w rozdziale 14. znajdziemy m.in. opis pakietu SSIS który za pomocą kontenera ForEachLoop automatycznie przetwarza dzienniki błędów serwera SQL. Ciekawostką tego rozdziału jest zamieszczona w nim chyba jedyna w całej książce krytyczna uwaga dotycząca serwera SQL („Istotnym mankamentem SSM jest brak możliwości wykonywania, tworzenia, modyfikowania, debugowania i wdrażania pakietów SSIS”).
- Podwajaniu (mirroringowi) baz danych — choć jedna z najciekawszych nowości została w pełni udostępniona dopiero razem z pakietem SP1 w książce znajdziemy jej dokładny opis (najpoważniejszą zmianą w stosunku do książki jest chyba wymóg obcięcia dziennika transakcyjnego podwajanej bazy danych poprzez wykonanie jego kopii i odtworzenie jej na serwerze lustrzanym). Dowiemy się z niego między innymi że jedną z funkcji serwera nadzorującego jest zapobieganie sytuacjom w których po awarii sieci oba serwery (główny i lustrzany) będą chciały przejąć role serwera głównego i dlaczego nie należy używać serwera nadzorującego w trybie asynchronicznym.
- Usłudze powiadamiania (Notification Services) — czytając opis jej budowy i działania proponuję zastanowić się nad powodami wycofania tej usługi w następnej wersji serwera SQL.
Podsumowanie
Serwer SQL 2005 jest bardzo rozbudowanym produktem — jeżeli nie chcesz kupować 10 książek na jego temat, kup tę jedną. Pozwoli Ci ona poznać nowe funkcje serwera, w dodatku na podstawie ciekawie dobranych przykładów.
Jeżeli jednak chciałbyś zdobyć podstawowe informacje potrzebne do codziennej pracy z serwerem SQL 2005, a nie znasz jego wcześniejszych wersji, możesz być rozczarowany — wystarczy zapoznać się ze spisem treści aby zorientować się, że książka koncentruje się na nowych funkcjach serwera. Z drugiej strony nowości jest tak dużo, że można ją uznać za kompletny przegląd serwera SQL 2005.
Zakres książki jest bardzo szeroki, ale 2/3 rozdziałów poświęconych jest usłudze relacyjnej. W rezultacie usługi BI przedstawione są dość wybiórczo a ich opis należy traktować jako dodatkowe, nie podstawowe źródło wiedzy.
WSS.pl Marcin Szeliga