SQL Server jako podstawa Microsoft BackOffice

Microsoft opiera sukces swej strategii produktów BackOffice na sukcesie serwera bazy danych Microsoft SQL Server 6.0. Wyniki testów wykonanych przez InfoWorld (USA) są zachęcające, co daje szansę na powszechną akceptację tego produktu.

Microsoft opiera sukces swej strategii produktów BackOffice na sukcesie serwera bazy danych Microsoft SQL Server 6.0. Wyniki testów wykonanych przez InfoWorld (USA) są zachęcające, co daje szansę na powszechną akceptację tego produktu.

Microsoft dołącza do serwera wiele produktów do zarządzania serwerami i aplikacjami w środowisku sieciowym, dodał możliwości replikacji bazy, zmniejszył wysiłek programistów przez dołączenie możliwości deklarowania więzów integralności i dostępność skrolowalnych dwukierunkowych kursorów realizowanych w serwerze, wykorzystał możliwości środowiska Windows NT w zakresie wielowątkowości dopuszczając równoległe ładowanie i składowanie bazy oraz zapoczątkował ścieżkę obiektów rozproszonych dopuszczając używanie SQL Servera jako serwera OLE Automation.

Testy pracy transakcyjnej aplikacji i serwera przeprowadzone przy użyciu krótkich transakcji na symulowanej bazie obsługi sprzedaży o pojemności 1,3 GB, zawierającej 13 tabel i 19 indeksów oraz 50 klientów, pokazały że szybkość serwera w wersji 6.0 jest większa o 15 do 45% w stosunku do poprzedniej wersji 4.21a. Jednakże przy długich transakcjach wymagających pojedynczego zatwierdzenia (commit) lub wycofania (rollback) całości transakcji stwierdzono nieznaczne zmniejszenie szybkości wykonywania tej operacji w stosunku do wersji 4.21a.

Testowano także operacje typowe dla aplikacji wspomagania decyzji: długie i skomplikowane zapytanie wymagające łączenia wyników z 4 tabel; skanowanie całej tabeli zawierającej 5 mln rekordów; obliczanie sumy częściowej dla części bazy, dotyczącej jednego regionu. Podobnie jak przy przetwarzaniu transakcyjnym zaobserwowano wyniki o 15 do 45% lepsze niż w przypadku wersji 4.21a. Zwiększenie szybkości jest związane z lepszą pracą optymalizatora zapytań.

Nowe narzędzia

Microsoft do każdej kopii serwera SQL Server 6.0 dołącza komplet narzędzi administracyjnych i usługowych w postaci pakietu Distributed Management Framework. Jedną z jego części jest Enterprise Manager pozwalający na wykonywanie wszystkich prac związanych z administrowaniem wieloma serwerami SQL Server 6.0 w sieci z pojedynczej konsoli Windows. SQL Distributed Management Object służy do przygotowania specjalnych aplikacji w Visual Basic lub Visual C++ (lub innych języków korzystających z OLE) w celu operowania i administrowania SQL Servera za pośrednictwem OLE Automation. SQL Executive służy do zadawania terminowego wykonywania zadań oraz monitorowania i alarmowania o nietypowych wydarzeniach w pracy serwerów bazy.

W zestawie narzędzi nie ma jednak żadnej aplikacji do monitorowania stanu pliku dziennika bazy (log file).

Administrator musi więc nadzorować jego rozmiar i okresowo przenosić go na nośnik zapasowy.

Możliwości programowe

Nowe możliwości programowe to deklarowanie więzów integralności danych w bazie, określenie indeksów, kluczy głównych i obcych oraz reguł działalności w skrypcie definiującym bazę, zamiast pisania ich w postaci trygerów.

Jest to znacznie szybsza i dogodniejsza metoda programowania. Nowa funkcja Indentity pozwala na nadawanie unikatowego numeru kolejnemu wierszowi tabeli. Dwukierunkowe skrolowalne kursory realizowane przez serwer bazy upraszczają pisanie aplikacji, bez potrzeby zapamiętywania wyników zapytania w stacji klienta.

Jedno z ważniejszych usprawnień polega na akceptacji przez funkcję "ExecSQL" (wykonującą polecenia SQL z języka programowania) ciągów znaków zawierających zmienne. Oznacza to, że zamiast wstawiać do programu stałe wartości, można dynamicznie - w chwili wykonania programu - zmieniać nazwy tabel i kolumn. Pozwala to na pisanie bardziej elastycznych zapamiętanych procedur z parametrami, wstawianymi w chwili ich wywołania.

Współpraca wielu użytkowników

Określenie sposobu i zakresu blokowania rekordów w bazie ma wpływ na wydajność i zasady czytania danych z bazy. Normalnie blokowanie dostępu (lock) dotyczy pojedynczego rekordu. Opcja No Lock powoduje, że transakcja może odczytywać dane z rekordu podlegającego modyfikowaniu przez inną transakcję. Update Lock pozwala na odczyt, nie na modyfikowanie danych przez inną transakcję. Exclusive Lock wyklucza używanie danych przez inną transakcję. Jeżeli zapytanie korzysta z dużej części tabeli, istnieje możliwość eskalacji blokady na poziom strony dyskowej (na ogół kilka rekordów) lub całej tabeli.

Zmieniany dynamicznie poziom izolacji określa sposób blokowania bazy w całej sesji połączenia z bazą.

Konkluzja

Oderwanie się serwera bazy danych SQL Server 6.0 od swego pierwowzoru (Sybase SQL Server) zaowocowało opracowaniem całkowicie nowego produktu, dobrze wykorzystującego właściwości funkcjonalne i możliwości środowiska Windows NT. Biorąc pod uwagę stosunkowo niską cenę (999 USD za SQL Server; 2369 USD za 20 klientów) można oczekiwać szerokiej akceptacji tego produktu przez użytkowników korzystających z komputerów pod Windows NT jako serwerów baz danych i aplikacji.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200