© 2000 Microsoft Corporation. All rights reserved.
The information contained in this document represents the current view of Microsoft Corporation on the issues discussed as of the date of publication. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented after the date of publication.
This Reviewers Guide is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT.
Microsoft, Windows, MSDN, Windows NT, BizTalk, Win32, Visual Studio, Active Directory, ActiveX, Visual SourceSafe, Visual C++ and Visual Basic are either trademarks or registered trademarks of Microsoft Corporation in the United States and/or other countries
Other product or company names mentioned herein may be the trademarks of their respective owners.
Microsoft Corporation • One Microsoft Way • Redmond, WA 98052-6399 • USA
Microsoft SQL Server 2000 Reviewers Guide April 11, 2000.
Spis treści
Wprowadzenie
Przegląd
W tej publikacji prezentowany jest przegląd głównych elementów Microsoft® SQL Server™ 2000, ze szczególnym uwzględnieniem wielu nowych możliwości i rozszerzeń.
Kolejna wersja SQL Server, SQL Server 2000 powstała na bazie serwera SQL Server 7.0 (wersji, w której zmieniono gruntownie architekturę i która powstała niemal od podstaw). Obecnie, SQL Server 7.0, dzięki swojej wydajności, skalowalności, łatwości zarządzania, a także łatwości tworzenia aplikacji, jest serwerem bazodanowym polecanym dla wielu typów aplikacji, wśród których warto wymienić produkty typu Customer Relationship Management (CRM), Business Intelligence (BI), Enterprise Resource Planning (ERP). Dodatkowo, SQL Server 7.0 odniósł wielki sukces jako baza danych przeznaczona dla Internetu. SQL Server 2000 kontynuuje tradycję tworzenia doskonałej architektury serwerów bazodanowych, stając się solidnym filarem dalszych zmian w linii produktów SQL Server, od 64-bitowych wersji, przez wersje przeznaczone dla Windows® CE (spodziewanych w tym roku), aż po “Yukon”, następną wersję SQL Server po SQL Server 2000.
Microsoft SQL Server 2000 to kompletne rozwiązanie bazodanowe i analityczne przeznaczone do szybkiego tworzenia następnej generacji skalowalnych aplikacji przeznaczonych dla Internetu. Jako główny element platformy .NET, znacznie zmniejsza czas niezbędny do uruchomienia nawet najbardziej wymagającej aplikacji e-commerce, czy hurtowni danych przy równoczesnym zapewnieniu wystarczającej skalowalności potrzebnej w najbardziej wymagających scenariuszach. SQL Server 2000 wspiera standard XML oraz HTTP; możliwości podziału obciążenia zwiększające wydajność
i dostępność serwera; zaawansowane funkcje zarządzania i strojenia serwera, pozwalają automatyzować rutynowe zadania, obniżając tym samym całkowite koszty utrzymania. Co więcej, SQL Server 2000 w pełni korzysta z możliwości, jakie niesie ze sobą Windows 2000, włączając w to wsparcie dla usług katalogowych (Active Directory™) a także obsługę do 32 procesorów i 64 GB RAM (a nawet więcej, gdy pod koniec roku zostanie wprowadzona wersja 64-bitowa).
Założenia
Ten przewodnik zakłada, że czytelnik zaznajomiony jest z podstawami relacyjnych systemów zarządzania bazami danych (RDBMS), i ma pewne doświadczenia z poprzednimi wersjami SQL Server. Pomóc także może doświadczenie związane z technologiami OLAP.
Czytelnicy mniej obeznani z technologią RDBMS, a zwłaszcza z Microsoft SQL Server, powinni zasięgnąć dodatkowych informacji pod sqlrev@microsoft.com.
Wsparcie przy testowaniu produktu
Szkolenia
Dostępne są szkolenia z zakresu SQL Server 2000 w centrach edukacyjnych Microsoft Certified Technical Education.
Dodatkowe informacje
Istnieje jeszcze kilka nowych źródeł informacji, dla tych, którzy chcą poszerzyć wiedzę o nowych możliwościach SQL Server 2000:
Dokumentacja on-line (Books Online), SQL Server 2000, która zawiera wyczerpujące informacje o nowych możliwościach tego serwera. Dobrym punktem początkowym jest sekcja What's New. Books Online jest zawarta na CD z SQL Server 2000.
Witryna Microsoft SQL Server: www.microsoft.com/sql/ zawiera obecnie informacje na temat SQL Server, w tym oferty cenowe, white papers, raporty i analizy, jak również połączenia do firm trzecich i wiele innych zasobów. .
MSDN™ Online SQL Server Developer Center: msdn.microsoft.com/sqlserver/ zawiera bazy danych i wszystkie informacje niezbędne dla programistów, którzy chcą tworzyć rozwiązania dla
SQL Server (w tym dokumentację dostarczaną z produktem, artykuły techniczne, porady i wiele innych).
Microsoft TechNet: www.microsoft.com/technet to podstawowe źródło odpowiedzi dla profesjonalistów z branży IT. Zawiera forum techniczne, zapisy rozmów i inne zasoby dotyczące instalacji, zarządzania i wsparcia dla SQL Server. Zasoby dotyczące SQL Server 2000 będą udostępniane po rozpoczęciu sprzedaży produktu.
PRzegląd EDycji
SQL Server 2000
SQL Server 2000 jest dostępny w wielu różnych edycjach, by dostosować wydajność, motor bazy i cenę do wymagań danego klienta.
SQL Server 2000 Enterprise Edition to pełny SQL Server przeznaczony dla dowolnej firmy. Zapewnia najwyższą skalowalność i dostępność konieczną dla aplikacji krytycznych dla biznesu i w scenariuszach internetowych. Pozwala wykorzystać podzielone widoki, transfer logu i zaawansowaną obsługę klastrów. Może korzystać także z pełnych możliwości najwyższej klasy serwerów, obsługując do 32 CPU i 64 GB RAM. SQL Server 2000 Enterprise Edition daje możliwości zaawansowanej analizy OLAP, pozwalające efektywnie obsługiwać największe kostki z wieloma wymiarami, a równocześnie pozwala gładko zmieniać interfejs użytkownika pomiędzy wspieranymi językami.
SQL Server 2000 Standard Edition jest odpowiednią opcją dla małych i średnich przedsiębiorstw, które nie wymagają wysokiej skalowalności i tak dużej wydajności w analizie danych, jaką daje SQL Server 2000 Enterprise Edition. Standard Edition może być uruchamiana w architekturze SMP z co najwyżej 4 procesorami i 2 GB RAM.
SQL Server 2000 Personal Edition posiada pełny zestaw narzędzi do zarządzania i większość Standard Edition, ale zoptymalizowany jest pod kątem potrzeb jednego użytkownika. Można ją uruchomić nie tylko na serwerowych systemach operacyjnych Microsoft, ale także na Windows 2000 Professional, Windows NT® Workstation 4.0 i Windows 98. Obsługiwane są systemy z dwoma procesorami. Ta wersja pozwala korzystać z baz danych o dowolnej wielkości, jednak jej wydajność dostosowana jest do pojedynczego użytkownika lub małych grup roboczych, o nie więcej niż pięciu równolegle pracujących użytkownikach.
SQL Server 2000 Developer Edition to wersja przeznaczona dla programistów, która pozwala tworzyć dowolne aplikacje oparte o
SQL Server. Funkcjonalnie odpowiada wersji Enterprise Edition, ale licencja (EULA) obejmuje tylko zezwolenie na zastosowania developerskie i testowe, a nie pozwala na wykorzystanie tej edycji serwera w środowisku produkcyjnym (więcej szczegółów można znaleźć w SQL Server 2000 Developer Edition EULA).
SQL Server 2000 Enterprise Evaluation Edition to pełna wersja Enterprise Edition, ograniczona czasowo i zawierająca pewne dodatkowe restrykcje w licencji, (więcej szczegółów można znaleźć w Evaluation Edition EULA).
SQL Server 2000 Desktop Engine (MSDE) to podstawowy motor
SQL Server 2000. Nie zawiera narzędzi do zarządzania, pakietu do analizy danych, wsparcia dla replikacji typu merge, licencji typu CAL, bibliotek dla programistów i dokumentacji. Ogranicza także wielkość bazy danych i obciążenie ze strony użytkowników. Jest to wersja o najmniejszych wymaganiach ze wszystkich edycji SQL Server 2000, co czyni ją idealnym kandydatem do rozwiązań osadzonych bądź do przechowywania danych offline.
SQL Server 2000 Windows CE Edition to wersja SQL Server 2000 przeznaczona dla urządzeń, na których uruchomiony jest system operacyjny Windows CE. Pod względem interfejsów dla programistów jest kompatybilna z pozostałymi wersjami SQL Server 2000, co pozwala, by programiści skorzystali z doświadczeń nabytych przy pracy z innymi edycjami SQL Server. Dzięki niej możliwe jest przechowywanie danych na nowej klasy urządzeniach.
microsoft .NET i sql sERVER 2000
Tworzenie następnej generacji aplikacji dla Internetu
Jako pełne rozwiązanie bazodanowe i analityczne, pozwalające błyskawicznie dostarczać kolejną generację aplikacji dla Internetu, SQL Server 2000 jest niezastąpionym elementem platformy internetowej Microsoft .NET. Pozwala by programiści i członkowie działu IT zbudowali i uruchomili rozwiązanie integrujące klientów, partnerów, procesy biznesowe i aplikacje. Microsoft .NET to pełna, zintegrowana platforma przeznaczona do budowy i wdrażania aplikacji dla “biznesowego” Internetu. Od silnie obciążonych witryn e-commerce po integrację wszystkich elementów łańcucha dostaw w przedsiębiorstwie, Microsoft .NET to najszybsza droga do utworzenia rozwiązania przeznaczonego dla Internetu.
W skład Microsoft .NET wchodzą: usługi sieciowe i WWW, narzędzia RAD dla programistów, skalowalny serwer aplikacji pozwalający tworzyć rozwiązania wzorowane na Internecie.
Fundament Microsoft .NET
Podczas gdy wielu dostawców sprzedaje oddzielnie “serwer aplikacyjny”, Microsoft dostarcza kompletny zestaw usług internetowych w pełni zintegrowanych z systemem operacyjnym Windows. Innymi słowy, serwer aplikacyjny dla .NET to Windows 2000. Poniżej wymienione są elementy, znajdujące się w każdej z edycji Windows 2000, co jasno pokazuje, że Windows 2000 jest najlepszym fundamentem do budowy rozwiązań opartych na WWW:
Internet Information Services 5.0 (IIS) - zintegrowane usługi sieciowe, które pozwalają zarówno łatwo przechowywać i zarządzać witrynami WWW jak i udostępniać wszelkie informacje, tworzyć aplikacje oparte na WWW a także rozszerzają komunikację o dzielenie plików, drukarek czy dodatkowe usługi komunikacyjne.
Active Server Pages (ASP) - wysoce wydajne środowisko skryptowe serwera WWW, idealne do tworzenia dynamicznych elementów na stronach WWW.
COM+ Component Services (znane jako Microsoft Transaction Server lub MTS) - pozwalają na tworzenie komponentów, z wbudowaną transakcyjnością, kontrolą rozmiaru puli wątków/obiektów, aktywacją JIT (just-in-time), zdalnym wywoływaniem metod i wieloma innymi właściwościami znanymi ze środowisk dla programistów.
Rozproszone transakcje - wsparcie transakcji, które aktualizują informacje na jednym lub więcej komputerach połączonych w sieci.
Kolejka komunikatów Microsoft Message Queuing (MSMQ) - zapewnia sprawną komunikację w systemie sieciowym bez względu na bieżący stan infrastruktury sieciowej lub aplikacji komunikacyjnych.
Bezpieczeństwo oparte na rolach - pozwala, by programiści definiowali poziomy bezpieczeństwa na poziomie metod, interfejsów czy pakietów obiektów.
Automatyczne wyrównywanie obciążenia w sieci (Network Load Balancing, NLB) - zapewnia skalowalność i wysoką dostępność dzięki rozkładaniu ruchu pomiędzy wielowęzłowe klastry.
Usługi katalogowe (Active Directory Services) - pozwalają na centralne administrowanie informacjami o użytkownikach, aplikacjach i urządzeniach.
Wysoko wydajne wsparcie dla XML (Microsoft XML Parser) - ułatwia tworzenie aplikacji, które wymieniają informacje za pośrednictwem formatu XML z Microsoft Internet Explorer i produktem serwerowym otwartym na XML.
ActiveX® Data Objects - jeden interfejs pozwalający na dostęp do wszystkich typów danych (zarówno relacyjnych, jak i nie relacyjnych), a równocześnie pozwalający przekształcać zbiór rekordów w postać XML.
Dzięki zintegrowaniu wszystkich tych usług, developerzy nie muszą troszczyć się o tworzenie niezbędnej infrastruktury dla aplikacji rozproszonych, a mogą skupić się na rzeczywistym rozwiązywaniu problemów biznesowych. Aby stworzyć rozwiązanie .NET (gdzie w warstwie danych znajduje się SQL Server, logika biznesowa przetwarzana jest w warstwie środkowej na Windows 2000, a interfejs użytkownika oparty jest albo na WWW, albo stanowi tzw. grubego klienta korzystającego z możliwości Windows) programiści mogą korzystać z wiodącego pakietu dla developerów, Microsoft Visual Studio®. Dzięki .NET, programiści mogą płynnie przechodzić od tradycyjnych metod programowania do tworzenia aplikacji WWW. Mogą tworzyć bezstanowe, transakcyjne komponenty warstwy środkowej lub swobodnie powiązane systemy oparte na wymianie komunikatów za pośrednictwem MSMQ.
Platforma nowej generacji: Microsoft .NET
Microsoft .NET 2000 to kolejna faza rozwoju architektury Windows DNA, która składa się z następujących produktów serwerowych: SQL Server 2000, Application Center 2000, Commerce Server 2000, BizTalk Server 2000 i Host Integration Server 2000. Dzięki Windows DNA 2000 można zbudować bezpieczną, niezawodną, wysoko skalowalną infrastrukturę Internetową, wymaganą przy aplikacjach obsługujących klientów, kooperantów bądź innych dowolnych aplikacjach. Produkty tworzące .NET 2000 zapewniają:
Pełne wsparcie dla XML i standardów internetowych - produkty serwerowe Windows DNA 2000 wykorzystują standardy, takie jak XML, HTML, HTTP, FTP i Xpath, by efektywnie wymieniać informacje za pośrednictwem Internetu i intranetu, nawet gdy poszczególne węzły są oddzielone firewallami.
Skalowalność oprogramowania w górę i wszerz - farmy serwerów lub klastry pozwalają podzielić obciążenie aplikacji lub całego systemu pomiędzy różne standardowe serwery PC, by zapewnić wysoką dostępność i skalowanie dostosowane do potrzeb. Dzięki nowej możliwości partycjonowania wbudowanej w SQL Server 2000,
Microsoft .NET rozszerza pojęcie skalowalności, pozwalając, by oprócz warstwy odpowiedzialnej za interfejs użytkownika i warstwy środkowej, także warstwa odpowiedzialna za dane korzystała z wielu serwerów. Równocześnie aplikacja może być uruchamiana na coraz to potężniejszych systemach wieloprocesorowych wiodących producentów. Pojedynczy serwer wyposażony w Windows 2000 DataCenter Server może obsługiwać do 32 procesorów.
Dostępność i niezawodność - czas niedostępności jest znacznie zredukowany dzięki podejściu “skalowalności wszerz”, ponieważ większość, jeśli nie wszystkie pojedyncze miejsca usterek zostały usunięte. Jeżeli jeden serwer musi zostać wyłączony, pozostałe dynamicznie przejmą jego obciążenie, pozwalając by aplikacja nieprzerwanie obsługiwała klientów. Co więcej, zintegrowane narzędzia upraszczają zarządzanie wszystkimi składnikami i usługami rozproszonymi pomiędzy różnymi maszynami, zmniejszając niezbędny czas wyłączenia serwerów związany z administracją, tym samym dodatkowo zwiększając dostępność.
Współpraca - podstawową cechą serwerów .NET Enterprise jest możliwość integrowania heterogenicznych systemów. Dzięki temu można połączyć klientów, partnerów czy dostawców. .NET pozwala, by programiści błyskawicznie stworzyli rozwiązaniach, które zintegrują wszystkie niezbędne elementy infrastruktury informatycznej.
Krótki czas wprowadzania produktu na rynek - dzięki głębokiej integracji wszystkich produktów i usług budujących platformę Windows DNA 2000 i najlepszym na świecie wsparciu ze strony narzędzi, programiści mogą koncentrować się na implementacji logiki biznesowej podczas budowy aplikacji. Dodatkowa praca związana z instalacją usług systemowych, niezbędnej infrastruktury czy większości komponentów została znacznie ograniczona dzięki temu, że wszystkie te technologie stanowią standardowe składniki platformy. To, oraz łatwość wykorzystania technologii, pozwala programistom znacznie szybciej implementować rozwiązania niż na innych platformach.
Łatwość instalacji, administracji i zarządzania - kiedyś, tworzenie wielowarstwowych aplikacji, ich instalacja i zarządzanie nimi w środowisku klastrowym było bardzo złożone i w zasadzie wymagało olbrzymiego nakładu pracy. Nowa filozofia projektowania opracowana przez Microsoft pozwala na dostarczenie najnowocześniejszych technologii równocześnie z odpowiednimi narzędziami, ułatwiającymi pracę programistom i administratorom. Platforma .NET została zaprojektowana tak, by budowa niezawodnych aplikacji, z zapewnieniem wysokiej skalowalności tworzonego rozwiązania i równoczesną łatwością administracji nie wymagała dużych nakładów pracy ze strony programistów.
Pełne wykorzystanie Windows 2000 - Windows 2000 jest fundamentem platformy .NET i zawiera zintegrowany serwer aplikacyjny klasy enterprise, z wbudowaną obsługą najnowocześniejszych technologii np. Storage Area Networks (SANs), olbrzymiej pamięci, czy architektury SMP do 32
procesorów. Tworzone na tej platformie pozostałe składniki .NET intensywnie wykorzystują wszystkie możliwości Windows 2000.
Servery .NET Enterprise
Oprócz Windows 2000 i SQL Server 2000, .NET zawiera następujące aplikacje serwerowe:
Microsoft Application Center 2000 - ten nowy produkt ułatwia instalację i zarządzanie rozwiązaniami opartymi na .NET uruchamianymi na farmie serwerów. Tak jak SQL Server 2000 pozwala na skalowanie wszerz warstwy danych, Application Center 2000 pozwala skalować warstwę środkową aplikacji opartej na WWW.
Microsoft Commerce Server 2000 - Commerce Server 2000 to najszybszy sposób tworzenia efektywnej, komercyjnej witryny internetowej. Zapewnia wszystkie usługi związane z personifikacją, zarządzaniem klientem i produktem, marketingiem powiązanym z bezpośrednią analizą operacji na witrynie, a także elektroniczną infrastrukturę niezbędną do tworzenie e-commerce. Commerce Server 2000 został zaprojektowany w celu przyspieszenia tworzenia witryn dostosowanych do konkretnego zastosowania. Powstałe rozwiązania są w pełni skalowalne, zoptymalizowane pod względem wygody użytkownika. Mają możliwość dostarczania w czasie rzeczywistym raportów analitycznych, co pozwala na zarządzanie biznesem on-line.
Współpracujący z tym produktem, SQL Server 2000 zapewnia zwarty, łatwy w zarządzaniu sposób modelowania danych i narzędzia wspierające administrację witrynami budowanymi w oparciu o Commerce Server 2000. Usługi SQL Server 2000 są wykorzystywane przy przetwarzaniu profilu użytkownika, tworzeniu katalogów produktów i analizie ciągu operacji wykonywanych przez użytkowników witryny (co pozwala przewidywać ich przyszłe zachowanie i jeszcze dokładniej zindywidualizować witrynę).
Microsoft® BizTalk™ Server 2000 - to nowe rozwiązanie przeznaczone do wymiany informacji pomiędzy firmami za pośrednictwem standardu XML. BizTalk Server 2000 zapewnia integrację procesów biznesowych dzięki wymianie dokumentów sformatowanych w XML.
SQL Server pozwala efektywnie przechowywać dokumenty i wykonywać okresowe operacje na danych pochodzących z BizTalk Server.
SQL Server 2000 i BizTalk Server 2000 obsługują ten sam, zredukowany schemat XML (XML Data Reduced). Umożliwia to wymianę dokumentów pomiędzy SQL Server i BizTalk Server bez dodatkowej konwersji.
Microsoft Host Integration Server 2000 - ten produkt zapewnia integrację (na poziomie sieci, danych i aplikacji) rozwiązań budowanych na podstawie .NET z platformami innych producentów.
SQL Server 2000 i Host Integration Server 2000 pozwala programistom wykorzystywać informacje pochodzące z heterogenicznych źródeł danych, a równocześnie umożliwia wykonywanie dwukierunkowej replikacji pomiędzy serwerami pochodzącymi od innych producentów a SQL Server 2000.
PoDStawowe CECHY SQL Server 2000
Microsoft dzięki dużym inwestycjom mającym na celu określenie wymagań klientów, dostarcza produkt, który spełnia oczekiwania użytkowników. Zespół SQL Server jest zobowiązany do rozumienia bieżących i przewidywania przyszłych potrzeb użytkowników. Przeprowadzono badania ilościowe (określenie wielkości rynku, analiza zastosowań i badania nad potrzebami użytkowników) i badania jakościowe (grupy zastosowań i informacje zwrotne od klientów i partnerów). Ze względu na żądania użytkowników, wycinkowe badania i strategiczne decyzje, SQL Server 2000 rozszerza mechanizmy dostarczone wraz z SQL Server 7.0.
SQL Server 2000 jest pełnym rozwiązaniem bazodanowym, z wbudowanymi mechanizmami analitycznymi pozwalającymi tworzyć następną generację skalowalnych aplikacji e-commerce czy rozwiązań hurtowni danych. Zawiera elementy, które sprawiają, że jest:
W pełni otwarty na WWW
Wysoce skalowalny i dostępny
Rozwiązania oparte na SQL Server 2000 mogą być bardzo szybko dostarczane na rynek
Dodatkowo, zespół projektowy SQL Server na każdym etapie tworzenia tej aplikacji kładł silny nacisk na jakość produktu. Dla pewności, że jakość produktu odpowiada wymaganiom klientów, został stworzony program Early Adopter, udostępniający kolejne wersje testowe SQL Server 2000. Partnerzy i klienci biorący udział w tym programie pochodzili z różnych gałęzi przemysłu i przez wiele miesięcy testowali SQL Server 2000, nawet w środowisku produkcyjnym. Zespół SQL Server jest pewny, że dzięki zapewnieniu wysokiej jakości podczas tworzenia aplikacji i bardzo intensywnemu testowaniu zarówno wewnątrz Microsoft, jak i w innych firmach, SQL Server 2000 jest najwyższej jakości produktem z linii SQL Server.
W pełni otwarty na Internet
Nawet dzisiaj, przed rozpoczęciem sprzedaży SQL Server 2000, SQL Server jest najbardziej popularną bazą danych wykorzystywaną do przechowywania danych w Internecie. SQL Server 2000 odpowiada oczekiwaniom klientów potrzebujących dodatkowej funkcjonalności w stosunku do tego, co oferuje
SQL Server 7.0. Zespół SQL Server skupił się na zapewnieniu:
Szerokiego wsparcia dla XML i innych standardów internetowych. SQL Server 2000 może zarówno generować, jak i odczytywać dane w formacie XML. Za pośrednictwem XML można dodawać, aktualizować i kasować informacje. Dzięki prostemu modelowi XML (bez złożonego programowania) zarówno programiści bazodanowi, jak i ci, którzy tworzą aplikacje Internetowe, mogą wykorzystać nabyte doświadczenie z równoczesnym skorzystaniem z możliwości XML. SQL Server 2000 w pełni wspiera standardy W3C.
Łatwego, a zarazem bezpiecznego dostępu do danych za pośrednictwem Internetu. SQL Server 2000 pozwala na dostęp i zadawanie zapytań z poziomu URL, za pośrednictwem HTTP. W nowej wersji SQL Server zostały znacznie rozszerzone możliwości wyszukiwania w pełnym tekście. Ułatwia to wyszukiwanie sformatowanych dokumentów dzięki konfigurowalnym filtrom. English Query (naturalny język zadawania pytań) upraszcza tworzenie rozwiązań opartych na WWW.
Potężnych, a zarazem bardzo elastycznych możliwości analitycznych. Istniejące kostki OLAP można łączyć lub analizować za pośrednictwem Internetu. Dostarczone narzędzia i algorytmy pozwalają na tworzenie elastycznych aplikacji analitycznych. Te usługi zostały zintegrowane z Commerce Server 2000, by zapewnić pełną analizę witryny internetowej, w tym także zachowania użytkownika (ten typ analizy określany jest jako Business Internet Analytics; więcej szczegółów można znaleźć pod adresem: www.microsoft.com/sql/bizsol/BIA.htm). Znacznie przyspieszona została operacja zliczająca wystąpienia różniących się wartości (DISTINCT COUNT).
Bezpiecznego uruchamiania aplikacji. Dzięki wieloinstancyjności, można izolować różne instalacje SQL Server na pojedynczej maszynie. Nowe funkcje SQL Server 2000 pozwalają klonować i dystrybuować obrazy instalacji, by łatwiej można było zapewnić zgodność tworzonych baz na wszystkich serwerach.
Wysoka skalowalność i dostępność
Już SQL Server 7.0 dowiódł, że jest popularną bazą danych, chętnie wykorzystywaną jako podstawa aplikacji internetowych, w szczególności e-commerce. Osiąga rekordową skalowalność w różnych scenariuszach zastosowań. Wykorzystują go firmy, takie jak barnesandnoble.com z największym poziomem dostępności. W rzeczywistości wiele popularnych witryn działa już dziś na SQL Server 7.0; przykładami są Dell.com, Nasdaq.com, Buy.com czy Quote.com. SQL Server 2000 zawiera wiele cech zapewniających wysoką skalowalność i dostępność:
Skalowalność dla rozwiązań E-Commerce. SQL Server 2000 może rozdzielić obciążenie pomiędzy wiele instalacji serwera. Zapewnia zaawansowane metody automatycznej optymalizacji kwerend i pozwala, by zapytania były kierowane do więcej niż jednego serwera w rozproszonej bazie danych działającej na SQL Server 2000. Może on w pełni korzystać z architektury SMP.
Skalowalność dla rozwiązań typu Line-of-Business (LOB). Zwiększono wsparcie dla architektury SMP, by SQL Server 2000 mógł w pełni korzystać z nowych możliwości Windows 2000. Wspiera bezpośredni dostęp do wydajnych wewnętrznych połączeń międzyserwerowych. Partnerzy, a szczególnie niezależni producenci oprogramowania, są zainteresowani zapewnieniem wysokiej wydajności aplikacji budowanych na bazie SQL Server 2000. SQL Server 2000 obsługuje do 32 procesorów i 64 GB RAM.
Skalowalność dla rozwiązań hurtowni danych. Zwiększono wydajność generowania nawet bardzo złożonych raportów. Może on analizować nawet olbrzymie zbiory danych, przy minimalnym reprocesingu. Pozwala tworzyć wymiary z dziesiątkami milionów elementów. Skalowanie wszerz pozwala w sposób niezauważalny dla aplikacji czy użytkownika dzielić kostki w farmie serwerów.
Długi czas nieprzerwanego działania, wysoka dostępność i niezawodność. W SQL Server 2000 znacznie uproszczone zostało konfigurowanie i zarządzanie klastrami. Nowy aparat bazodanowy pozwala na nieprzerwany dostęp do danych w czasie trwania większości operacji administracyjnych. SQL Server 2000 obsługuje nowe typy kopii zapasowych (kopie różnicowe i obrazy typu “server-less”). Można wykonywać bez kłopotu transfer logu pomiędzy instancjami serwera.
Szybkie dostarczanie rozwiązań na rynek
SQL Server od dłuższego czasu jest postrzegany jako najszybszy sposób budowy, instalacji i zarządzania rozwiązaniami e-commerce, typu “line of business” i hurtowniami danych. Badania wykonywane przez niezależne organizacje udowodniły, że SQL Server jest znacznie prostszy w wykorzystaniu niż produkty konkurencji, i ma znacznie niższe całkowite koszty utrzymania. SQL Server 2000 zawiera wiele nowych cech gwarantujących, że obsługa będzie jeszcze prostsza, a czas dostarczenia produktu opartego o
SQL Server 2000 na rynek znacznie krótszy. Nowymi elementami w tym zakresie są:
Zintegrowane, rozszerzalne usługi analityczne.
Wraz z SQL Server 2000 klient otrzymuje kompletne rozwiązanie OLAP, otwarte na Internet, włączając w to narzędzia do eksploracji danych. Wyniki analizy mogą automatycznie sterować działaniem aplikacji. Można do już istniejących dołączać nowe usługi analityczne.
Uproszczone zarządzanie i dostrajanie. Pozwala na centralne zarządzanie bazą danych z poziomu usług katalogowych (Windows 2000 Active Directory™). Serwer może samodzielnie dostrajać się do obciążenia. Co więcej, przenoszenie baz danych pomiędzy instancjami SQL Server 2000 czy poszczególnymi serwerami jest znacznie prostsze.
Rozszerzone i uproszczone programowanie w T-SQL, z wbudowaną możliwością śledzenia. SQL 2000 zawiera wbudowany debugger pozwalający śledzić operacje wykonywane w T-SQL. Dzięki możliwości tworzenia wzorców T-SQL, można znacznie uprościć proces kodowania. Daje także możliwość śledzenia operacji na serwerze przy równoczesnej analizie statystyk ze strony klienta.
Elastyczne i rozszerzalne usługi transformacji danych.
SQL Server 2000 zapewnia integrację z MSMQ i pozwala na dostęp do danych z Internetu za pośrednictwem FTP. Wsparcie dla OLE DB zostało znacznie rozszerzone (zwłaszcza procedury obsługi błędów i odzyskiwania stanu).
W pełni otwarty na Internet
Rozwiązania E-commerce mają duże wymagania w stosunku do oprogramowania, a zwłaszcza w stosunku do serwera bazodanowego.
W takich rozwiązaniach występuje szczególnie duże obciążenie operacjami transakcyjnymi, ponieważ użytkownicy z całego świata wykonują operacje na witrynie 24h na dobę. Bardzo ważna jest elastyczność w programowaniu, by nowa aplikacja mogła współpracować z istniejącymi systemami, a także by było możliwe szybkie dostosowanie produktu do zmieniających się wymagań biznesowych. SQL Server 2000 zapewnia bardzo szerokie możliwości programowania baz danych, oparte na standardach internetowych, a równocześnie gwarantuje wysoką wydajność, dostępność i niezawodność wymaganą przez e-commerce. Te cechy, w połączeniu z krótkim czasem wprowadzania nowego rozwiązania na rynek i uproszczonym zarządzaniem serwerem, sprawiają, że SQL Server 2000 jest najlepszą bazą danych dostosowaną do potrzeb e-commerce.
SQL Server 2000 oferuje więcej możliwości niż te, które są dziś wykorzystywane przez większość firm korzystających z e-commerce. Nowe rozwiązania oparte na tym serwerze będą wyróżniać się z kręgu konkurencji, dzięki temu, że zapewnią unikatowe usługi. Już dzisiaj, firmy zajmujące się
e-commerce zdały sobie sprawę, że potrzebują wydobyć informacje z olbrzymiej masy danych generowanych przy okazji operacji wykonywanych przez użytkowników ich witryn. W pełni otwarte na Internet możliwości analityczne SQL Server 2000 pozwalają na analizę “ciągu kliknięć” użytkowników, co pozwala głębiej zrozumieć zachowanie klientów. Co więcej, większość firm pragnie jak najszybciej dostarczyć rozwiązanie e-commerce na rynek i nie chce zajmować się codzienną administracją oprogramowania.
SQL Server 2000 doskonale sprawdza się w scenariuszach, gdzie firma decyduje się, aby zarządzanie bazą danych i jej utrzymanie spoczywało na wyspecjalizowanym dostawcy usług, Application Service Provider (ASP).
Pełne wsparcie dla XML i innych standardów internetowych
XML staje się (oprócz standardowej technologii wymiany danych) narzędziem do integrowania systemów e-commerce. Firmy tworzące oprogramowanie typu business-to-consumer, business-to-business czy ekstranetowe wykorzystują XML, by uprościć wymianę danych z systemami typu backend. Warto dodać, że dane w formacie XML mogą być przesyłane bez kłopotu przez firewall. XML to także uniwersalny “dialekt” pozwalający komunikować się aplikacjom pochodzącym od różnych dostawców czy działającym na różnych platformach - od systemów ERP po CRM. W wielu miejscach XML jest wykorzystywany do rozwiązywania problemów komunikacyjnych w warstwie środkowej aplikacji. Jednak programiści zorientowali się, że XML ma dużą wartość jako wydajny sposób przechowywania danych bądź jako format, w którym wygodnie jest generować wszystkie dokumenty i dane. SQL Server 2000 zawiera zintegrowane, wyczerpujące wsparcie dla XML, łatwe do wykorzystania zarówno dla programistów internetowych, jak i bazodanowych.
Bogactwo wbudowanej w SQL Server 2000 funkcjonalności związanej z XML powoduje, że programiści internetowi są tak naprawdę izolowani od komplikacji związanych z programowaniem bazodanowym. Mogą korzystać z takich technologii jak XPath, kwerend zadawanych za pośrednictwem URL czy datagramów aktualizujących XML. Z drugiej strony, programiści bazodanowi nie muszą uczyć się języka zorientowanego obiektowo, by zrozumieć wszystkie aspekty XML. Dla potrzeb większości scenariuszów dostępu do danych za pośrednictwem XML wystarczą dwie frazy, FOR XML, która powoduje że instrukcja SELECT zwraca wynik w postaci XML i OPENXML, pozwalająca traktować dane w postaci XML jak normalny zbiór rekordów.
Fraza FOR XML powoduje, że SQL Server zwraca wynik działania kwerendy (instrukcji SELECT) nie jako standardowy zbiór rekordów, ale jako dane sformatowane w XML. Dokładna postać formatowania zależy od trybu określonego opcją występującą zaraz za frazą FOR XML. SQL Server 2000 ma następujące tryby wyprowadzania informacji w postaci XML:
RAW: tryb RAW powoduje, że każdy wiersz wchodzący w skład wyniku jest przekształcany w ogólny element XML, ze standardowym identyfikatorem wiersza (znacznikiem XML).
AUTO: tryb AUTO powoduje, że wynik kwerendy zapisywany jest jako wielopoziomowe drzewo. Każda tabela występująca po frazie FROM, gdzie dodatkowo co najmniej jedna kolumna występuje w liście wynikowej, jest reprezentowana jako element XML, z odpowiednimi atrybutami określającymi typ. Hierarchia drzewa (zagnieżdżenie elementów) wynika z kolejności tabel i kolumn zwracanych przez SELECT. Tabela znajdująca się najbardziej po lewej będzie elementem w korzeniu drzewa. Następna tabela na lewo będzie kolejnym elementem zagnieżdżenia itp.
EXPLICIT: w trybie EXPLICIT, programiści samodzielnie definiują kształt drzewa XML. Wymaga to jednak specjalnego konstruowania kwerendy tak, by zawierała ona informacje na temat zagnieżdżenia.
Oprócz odczytywania danych w formacie XML, ważne jest także, by baza danych pozwalała w efektywny sposób przechowywać informacje sformatowane w XML, zapamiętując hierarchię i relacje pomiędzy poszczególnymi informacjami, a równocześnie umożliwiała pełne wykorzystanie prędkości motoru bazodanowego. SQL Server 2000 pozwala definiować widoki XML odpowiadające relacyjnym danym przechowywanym w bazie. Może także mapować dane XML do tabel połączonych relacjami. SQL Server 2000 pozwala na przechowywanie specjalnych “notatek” (rozszerzeń) w języku definiowania schematów XDR (XML-Data Reduced). Dzięki tym notatkom tworzone jest dwukierunkowe odwzorowanie pomiędzy XML a relacjami w bazie danych. Elementy i atrybuty dokumentów XML są mapowane na tabele
i kolumny w bazie danych. Domyślnie, nazwa elementu odpowiada nazwie tabeli (lub widoku) w bazie, a nazwa atrybutu nazwie kolumny. Dzięki notatkom można także określić hierarchiczne relacje w XML. Notatki służące do mapowania relacji i pól mają postać:
sql:relation: określają nazwę tabeli lub widoku, gdy nazwa nie odpowiada danemu polu w opisywanym schemacie XML.
sql:field: określa odwzorowanie pomiędzy elementem (<element>) czy atrybutem (<attribute>) w schemacie XML a kolumną w bazie danych.
sql:overflow-field: gdy nowy rekord wstawiany do bazy danych pochodzi z dokumentu XML, wszystkie nadmiarowe (nie wykorzystywane) pola z XML mogą być umieszczane w jednej kolumnie. Podczas odczytywania informacji z bazy danych (przy użyciu schematu XML z notatkami) atrybut sql:overflow-field określa kolumnę w tabeli, gdzie te nadmiarowe informacje zostały przechowane.
sql:relationship: to znacznik określający hierarchię elementów tabel na podstawie zachodzących relacji pomiędzy kluczem głównym i obcym.
Widoki XML pozwalają, by tabele bazy danych połączone relacjami były traktowane jak dokumenty XML. OpenXML pozwala natomiast na operację odwrotną. Dzięki temu poleceniu, dokumenty XML mogą być przetwarzane przy użyciu poleceń SQL. OpenXML to słowo kluczowe Transact-SQL (T-SQL) które otwiera aktualizowalny zbiór rekordów (w pamięci) odpowiadający dokumentowi XML. Rekordy z tego zbioru mogą być przechowywane w tabelach bazy danych (przypominają zbiory rekordów powstające na podstawie tabel lub widoków). OpenXML może być wykorzystywane w poleceniach SELECT bądź SELECT INTO w tych samych miejscach gdzie może wystąpić słowo kluczowe otwierające zbiór rekordów z tabeli/widoku (OPENROWSET). Przed rozpoczęciem operacji z OpenXML, należy najpierw utworzyć wewnętrzną reprezentację dokumentu XML (używając procedury sp_xml_preparedocument). Po wykonaniu tej operacji, zwracany jest uchwyt do wewnętrznej reprezentacji dokumentu XML, który należy przekazać do OpenXML, by możliwe było utworzenie zbioru rekordów na podstawie XPaths.
Po udostępnieniu pierwszej wersji SQL Server 2000, zostaną wprowadzone dodatkowe możliwości związane z XML: datagramy aktualizujące i wsadowe dodawanie danych z plików XML. Będzie to specjalna aktualizacja udostępniona już po wprowadzeniu SQL Server 2000 na rynek. Datagramy aktualizujące XML pozwolą programistom intenetowym, by mogli za pośrednictwem XML dodawać, aktualizować czy usuwać rekordy z tabel SQL Server 2000. Wsadowe dodawanie danych XML pozwala na operacje typu “bulk load”, gdzie źródłem danych jest dokument XML.
Łatwy i bezpieczny dostęp do danych za pośrednictwem Internetu
SQL Server 7.0 pozwala generować strony HTML na podstawie przechowywanych informacji, wysyłać je metodą “post” pod miejsca określone przez HTTP czy FTP, a także wysyłać i odbierać e-mail. SQL Server 2000 ma znacznie więcej możliwości związanych z udostępnianiem danych czy kostek OLAP w Internecie. Dzięki intuicyjnemu interfejsowi, pozwalającemu na pełne przeszukiwanie danych, nawet początkujący użytkownik nie będzie miał kłopotów ze skorzystaniem z informacji zawartych w bazach SQL 2000.
Bezpieczne połączenie HTTP do bazy danych
SQL Server 2000 pozwala na dostęp do baz za pośrednictwem URL na kilka sposobów. Wszystkie opierają się na specjalnym rozszerzeniu (zawartym w serwerze), ISAPI DLL, które pozwala by administrator zdefiniował wirtualny korzeń w Microsoft Internet Information Services (IIS) powiązany z konkretną instancją SQL Server 2000. Dzięki dostępowi za pośrednictwem URL można:
Bezpośrednio uruchomić kwerendę SQL. Kwerendy URL mają postać: http://server/vroot?sql=“…” Aplikacje internetowe mogą składać łańcuch URL z odwołania do wirtualnego korzenia odpowiadającego SQL Server 2000 i polecenia Transact-SQL. Polecenie T-SQL jest wysyłane do danej instancji SQL Server 2000, a wynik zwracany jest jako standardowy zbiór rekordów. Jeżeli natomiast w poleceniu T-SQL zawarta będzie fraza FOR XML, wynik zostanie zwrócony w postaci dokumentu XML.
Bezpośredni dostęp do obiektów w bazie danych (np. do tabel czy widoków). Tego typu kwerendy mają postać: http://server/vroot/dbobject/xpath. W tym przypadku dane nie są zwracane w postaci XML, co pozwala na odczyt np. obrazów czy innych binarnych informacji przechowywanych w bazie danych. Składnia XPath wymaga w takim przypadku by tabele
(i widoki) były traktowane jako elementy, a kolumny jako atrybuty.
Uruchamiać wzorce. Kwerendy związane z wzorcami mają postać: http://server/vroot/vname?params i bezpośrednio odwołują się do wzorca, który jest prawidłowym dokumentem XML zawierającym jedną lub więcej instrukcji SQL (które są wykonywane).
Uruchamiać kwerendy XPath za pośrednictwem widoków XML. Kwerendy XPath na widokach XML mają postać: http://server/vroot/vname/xpath?params Dzięki tego typu kwerendom można uzyskać dostęp do danych z relacyjnych tabel za pośrednictwem widoku XML View (schematu z adnotacjami), który odwzorowuje XML na tabele.
Rysunek 1: Wirtualny korzeń wykorzystywany do dostępu do SQL Server 2000 może być zdefiniowany w oknie dialogowym New Virtual Directory Properties.
Dla wszystkich opcji dostępu za pośrednictwem HTTP poziom bezpieczeństwa definiowany jest na poziomie wirtualnego korzenia, a prawa dostępu na poziomie SQL Server. Sam ISAPI DLL ma trzy opcje pozwalające określić sposób autoryzacji:
Anonimowy dostęp, gdzie ID i hasło Windows czy SQL Server jest bezpośrednio ustawione przy definiowaniu korzenia i dotyczy wszystkich użytkowników.
Podstawowa autoryzacja za pośrednictwem transmisji czystego tekstu (nazwy użytkownika SQL Server i jego hasła). Ta opcja powinna być wykorzystywana tylko w przypadku połączenia SSL.
Zintegrowany sposób autoryzacji przy użyciu Windows ACL.
Wyszukiwanie pełnotekstowe
Duża ilość informacji przechowywanej elektronicznie ma postać danych tekstowych, bez ściśle określonej hierarchii. Niektóre z tych dokumentów mają postać pliku tekstowego, inne zawierają dodatkowo formatowanie. Dotychczas, większość z tych dokumentów przechowywana była jako pliki na dysku. Teraz, coraz częściej zdarza się, że tego typu informacje umieszczane są w relacyjnych bazach danych. Dzięki takiemu podejściu możliwe jest pełne wykorzystanie cech motoru bazodanowego, w tym szybkiego dostępu do informacji, możliwości zadawania zapytań, a także wysoki poziom bezpieczeństwa i bezproblemowy zdalny dostęp. Warto podkreślić, że powoduje to także uproszczenie interfejsu dla użytkownika, który może posługiwać się jedną aplikacją by uzyskać dostęp do wszystkich potrzebnych mu informacji. Niestety, większość producentów baz danych żąda dodatkowej opłaty za możliwość wyszukiwania pełnotekstowego, co powoduje, że ta technologia nie jest tak popularna, jak mogłaby być. Większość użytkowników ucieka się do kupowania kosztownych rozwiązań firm trzecich, które oferują rozwiązanie ich problemów. Zwykle takie rozwiązania polegają na przenoszeniu informacji z bazy i przechowywaniu ich w zewnętrznych, specjalnie poindeksowanych plikach, które można przeszukiwać. Takie podejście nie pozwala na połączenie wyszukiwania tekstowego z tradycyjnym strukturalnym językiem zapytań. Wprowadzone w SQL Server 7.0, wyszukiwanie pełnotekstowe (Full-Text Search) pozwala, by programiści w analogiczny sposób traktowali zarówno dane strukturalne (przechowywane w tabelach połączonych relacjami), jak i dane tekstowe.
SQL Server 2000 oferuje dodatkowe możliwości w stosunku do tego, co znajduje się w SQL Server 7.0. Pozwala na wyszukiwanie informacji także w przypadku, gdy dokumenty tekstowe przechowywane są razem z formatowaniem (dokumenty HTML lub Office). Wyszukiwanie pełnotekstowe jest podstawowym elementem funkcjonalnym SQL Server 2000 i wchodzi w skład standardowej instalacji SQL Server. Administrator nie musi uruchamiać oddzielnego programu instalacyjnego. Co więcej, ta opcja jest dołączona zarówno do wersji Enterprise, Standard, jak i Personal, Developer, czy Enterprise Evaluation, bez konieczności ponoszenia dodatkowych kosztów.
Wymieniając cechy wyszukiwania pełnotekstowego w SQL Server można powiedzieć, że pozwala:
Tworzyć kwerendy wyszukujące pełnotekstowo po płaskich plikach tekstowych przechowywanych w tabelach bazy danych
Łączyć w jednej kwerendzie warunki określające wyszukiwanie pełnotekstowe z “tradycyjnymi” warunkami T-SQL.
Szukać po wszystkich poindeksowanych kolumnach w tabeli
Uzyskiwać dodatkowe informacje na temat kwerendy (np. stopień podobieństwa), czy określać wagi dla poszczególnych słów wyszukiwanych w bazie itp.
W SQL Server 2000 można stosować mechanizmy wyszukiwania pełnotekstowego na sformatowanych dokumentach (na przykład Office czy dokumenty HTML). Dokumenty przeznaczone do wyszukiwania pełnotekstowego są przechowywane w kolumnach BLOB w bazie danych. Kolumny należy w specjalny sposób zarejestrować. Filtrowanie dokumentów pozwala na wyciągnięcie tekstu ze specyficznego formatowania. SQL Server automatycznie analizuje dokument i określa, który z filtrów ma zostać zastosowany. W czasie indeksowania, wczytywany jest odpowiedni filtr, który zwraca informację zawierającą tylko tekst niezbędny do utworzenia indeksu pełnotekstowego (eliminowane są dodatkowo niektóre łączniki). Wraz z SQL Server 2000 rozprowadzane są filtry do plików HTML, plików tekstowych i dokumentów Office, ale programiści mogą stworzyć własne filtry, implementując interfejs IFilter.
Aktualizacja indeksów pełnotekstowych jest bardzo ważna, by użytkownicy mogli znaleźć dokument, który np. niedawno został dodany czy uległ modyfikacji. W SQL Server 7.0 konieczne było okresowe uruchamianie specjalnego zadania, które aktualizowało indeksy. SQL Server 2000 zawiera specjalny mechanizm pozwalający śledzić zmiany w indeksowanych dokumentach. Przechowywana jest lista zmian w stosunku do poindeksowanej już zawartości. Następnie można tę listę automatycznie (lub co określony przedział czasu) przenosić do indeksu, przy użyciu np. SQL Server Agent. Proces aktualizowania jest wykonywany asynchronicznie w tle, co znacznie upraszcza administrację, redukuje ilość ponownie przetwarzanych elementów (dzięki temu, że przenoszone są tylko zmiany), co z jednej strony skraca czas aktualizacji indeksu, a z drugiej powoduje, że indeks pełnotekstowy bardzo często dokładnie odpowiada zawartości indeksowanych kolumn.
Wśród innych rozszerzeń w indeksowaniu pełnotekstowym w SQL Server 2000 można wymienić:
Wsparcie dla klastrów. Wyszukiwanie pełnotekstowe może korzystać z mechanizmów zapewniania wysokiej dostępności i niezawodności zastosowanych w klastrach SQL Server 2000.
Generowanie indeksu pełnotekstowego jest także możliwe na widoku zdefiniowanym w bazie danych.
Dzięki Top_N_By_Rank, możliwe jest zwrócenie N najlepiej pasujących elementów. Jest to mechanizm, który bardzo poprawia wydajność przetwarzania.
Wsparcie dla różnych języków, jako konsekwencja związania konkretnego porządku sortowania i języka z kolumną tabeli w SQL Server 2000. Dzielenie wyrazów i odmiana zależy od wybranego języka.
Bezpieczeństwo
Rozumiejąc wartość i poufną naturę informacji przechowywanych, w opartych na WWW informacjach w systemach e-commerce, SQL Server 2000 zawiera istotne rozszerzenia w dziedzinie bezpieczeństwa. Można ustawiać bardzo wysoki poziom bezpieczeństwa (najwyższy dostępny na rynku), ale równocześnie nie wymaga to bardzo skomplikowanych operacji administracyjnych. Już przy instalacji, SQL Server 2000 domyślnie używa wysokiego poziomu zabezpieczeń, korzystając z wbudowanych mechanizmów w Windows 2000. Dzięki temu instalacja w środowisku produkcyjnym przebiega znacznie łatwiej i szybciej.
W SQL Server 2000 wprowadzono także nowe elementy pozwalające inaczej zorganizować poziomy bezpieczeństwa. Poziom bezpieczeństwa określany za pośrednictwem roli: dla serwera, bazy danych czy aplikacji. Z serwerem dostępne jest zintegrowane narzędzie pozwalające analizować zdarzenia zachodzące na serwerze i związane z bezpieczeństwem (śledzić można 18 głównych kategorii zdarzeń, gdzie każde zdarzenie ma dodatkowe zdarzenia podrzędne). SQL Server 2000 wspiera wyrafinowane sposoby kodowania, zarówno na poziomie plików, jak i transmisji sieciowej (w tym SSL), a również technologię Kerberos i delegację. SQL Server 2000 jest w trakcie badania zgodności z poziomem bezpieczeństwa U.S. Government's C2. Proces certyfikacji powinien się zakończyć niedługo po pojawieniu się SQL Server 2000 na rynku.
Zapytania w języku naturalnym (English Query)
Zwyczajowo, programiści tworzą aplikacje, które fakt generowania zapytań ukrywają przed użytkownikiem stosując albo określone algorytmy konstruowania kwerend na podstawie opcji wybieranych w interfejsie, albo udostępniają standardowy zestaw zapytań. Jednak takie podejście nie zapewnia możliwości analizy wszystkich możliwych wariantów. Idealny mechanizm to taki, który pozwoli tworzyć dowolne kwerendy, nawet przez początkującego użytkownika. Wtedy programista może skupić się na innych częściach aplikacji, a nie na konstruowaniu kolejnych kwerend i wbudowywaniu ich w aplikację, licząc że pokryją one zapotrzebowanie klienta. Dziś, wraz z rosnącą popularnością WWW, potrzeba dostarczenia użytkownikom interfejsu do generowania dowolnych zapytań jest jeszcze bardziej istotna. Użytkownicy oczekują, że odwiedzana witryna zawierać będzie wyrafinowane możliwości przeszukiwania.
Microsoft English Query pozwala, by ostatecznemu użytkownikowi zaoferować łatwy dostęp do wszelkich informacji przechowywanych w relacyjnej bazie danych. Użytkownik może zadawać pytania w języku angielskim, zamiast formułować je jako polecenia SQL. English Query działa jak translator, który przekształca naturalne pytanie w odpowiednią kwerendę SQL wyciągającą informacje z bazy danych. English Query jest rozwiązaniem w pełni zintegrowanym z SQL Server 2000 i dostępnym w edycjach Enterprise, Standard, Personal, Developer, a także Enterprise Evaluation Editions. Microsoft jako jedyny oferuje tego typu rozwiązanie, dołączone do podstawowego produktu bazodanowego.
W SQL Server 2000, tworzenie (“pisanie”) i instalacja aplikacji English Query jest znacznie uproszczona. Tworzenie osadzono w zintegrowanym środowisku dla programisty, Microsoft® Visual Studio® 6.0, który jest dołączany do
SQL Server 2000.
Rysunek 2: Tworzenie English Query można kontrolować z poziomu środowiska Visual Studio.
Rozpoczynając pracę nad projektem związanym z English Query, programista może skorzystać z nowego kreatora, który automatycznie utworzy odpowiednie encje i relacje we wszystkich tabelach w bazie danych. Dla każdej encji, kreator automatycznie utworzy nazwę i określi jej cechy. W wyniku tego powstaje około 70 procent modelu! Do środowiska dołączany jest specjalny graficzny edytor pozwalający łatwo konstruować diagramy i relacje w modelu English Query model (tworzenie nowych powiązań polega w zasadzie na przeciąganiu elementów). Aby dokładnie kontrolować model, programiści mogą wykorzystać nowy format, oparty na schematach XML, Semantic Modeling Format (SMF), który pozwala zapisać informacje o modelu English Query. Dzięki modelowi obiektów do edycji, Authoring Object Model, SMF pozwala na tworzenie aplikacji automatycznie generującej model dla English Query. Razem z pakietem, programiści otrzymują kilka przykładowych projektów EQ ułatwiających naukę tej technologii.
Instalacja rozwiązania opartego na English Query na serwerze WWW polega na kilku kliknięciach myszą. Również testowanie i niezbędne operacje administracyjne związane z English Query są znacznie uproszczone. Specjalny kreator podsuwa sugestie oparte na zapytaniach użytkownika, które zakończyły się porażką (rejestrowane są niepoprawne zapytania, które nie dały oczekiwanych wyników lub nie mogły być przetłumaczone), co pozwala niemal automatycznie doskonalić model EQ.
W połączeniu z usługami analitycznymi (właściwie z usługami OLAP), programista może także wykorzystywać aplikacje oparte na English Query na poziomie kostek OLAP dzięki temu, że EQ może także generować wielowymiarowe wyrażenia (MDX). Do środowiska programistycznego dołączony jest specjalny kreator pozwalający szybko stworzyć szkielet aplikacji wykorzystującej English Query i OLAP. Ten kreator jest zwykle w stanie wygenerować automatycznie jeszcze większy fragment modelu niż kreator standardowy. Oprócz integracji z kostkami OLAP (i usługami analitycznymi), English Query jest także w stanie łączyć się z dowolnymi źródłami danych za pośrednictwem OLE DB, co zapewnia, że w jednolity sposób traktowane są heterogeniczne informacje pochodzące z różnorodnych systemów. Rozszerzając te możliwości integracyjne, English Query w SQL Server 2000 może generować zapytania SQL nie tylko w dialekcie T-SQL (właściwym dla SQL Server 2000), ale także w SQL dla Oracle czy Microsoft Jet SQL.
Końcowy użytkownik na pewno skorzysta z integracji English Query
i wyszukiwania pełnotekstowego (EQ może generować zapytania zawierające predykaty CONTAINS i FREETEXT). Dzięki temu analizowane są zarówno dane przechowywane w tabelach z określoną struktura, jak i wszystkie pozostałe dokumenty. Zaawansowani użytkownicy końcowi mogą wykorzystać możliwości graficznego budowania kwerend (nowy Question Builder)
i uzyskiwać informacje na temat zastosowanego modelu English Query (w tym uzyskać listę angielskich fraz pozwalających określać relacje). Na interfejs Question Builder składają się trzy panele, pozwalające w znacznie prostszy sposób określić jakiego typu informacje są przechowywane w bazie danych, a co ważniejsze, obejrzeć zdefiniowane w modelu wszystkie encje i połączenia.
Analiza oparta na interfejsie WWW
SQL Server 2000 zawiera wiele istotnych rozszerzeń w zakresie usług analitycznych, które umożliwiają łatwe i szybkie uzyskanie dodatkowych informacji z przechowywanych danych. Zintegrowane usługi eksploracji danych to nowy element SQL Server 2000, pozwalający tworzyć kompletne rozwiązania analityczne oparte na SQL Server. Połączone kostki i dostęp za pośrednictwem HTTP pozwalają na udostępnienie narzędzi analitycznych na zewnątrz firmy (poza obszarem intranetu) co otwiera nowe rynki na wielowymiarowe dane, a równocześnie przedstawia nowy sposób na przeglądanie danych z poziomu WWW. Oprócz tych, jakże znaczących elementów, usługi analityczne zawierają nowy typ analizy DISTINCT COUNT (zlicz różne), który znacznie upraszcza wyznaczanie statystyk. Jest szczególnie użyteczny przy analizie ruchu na witrynie. DISCOUNT COUNT tradycyjnie należy do zaawansowanych narzędzi analitycznych, ponieważ jest relatywnie trudny do implementacji. Usługi analityczne w SQL Server 2000 zawierają DISCOUNT COUNT, nowy typ pomiaru, pozwalający odpowiadać na bardzo istotne pytania, jak: “Ilu różnych użytkowników odwiedziło dzisiaj moją witrynę?”. Jest to tylko niewielki przykład tego, w jaki sposób zespół
SQL Server usprawnił narzędzia analityczne w SQL Server 2000.
Eksploracja danych i analiza typu “Business Internet”
Zintegrowane usługi eksploracji danych to nowa usługa w SQL Server 2000, będąca częścią usług analitycznych, dostępna w wersji Enterprise, Standard, Personal, Developer i Enterprise Evaluation Editions. Technologie eksploracji danych pomagają użytkownikom analizować dane przechowywane zarówno w relacyjnych bazach danych, jak i wielowymiarowych kostkach OLAP. Mają na celu analizę trendów i określanie przyszłych zmian. Eksploracja danych w SQL Server 2000 jest ściśle zintegrowana zarówno z danymi relacyjnymi, jak i OLAP. W rzeczywistości, dzięki analizie wykonywanej podczas eksploracji danych, zwykle tworzy się dodatkowy wymiar w kostce, do dalszych analiz OLAP. Można także wykorzystać je przy konstruowaniu zapytań SQL. Usługi eksploracji danych w SQL Server 2000 są częścią otwartego standardu specyfikacji OLE DB for Data Mining i mogą być bez kłopotu rozszerzane o własne analizy.
SQL Server 2000 zawiera dwie klasy algorytmów eksplorujących wynalezionych przez dział Microsoft Research: Microsoft Decision Trees i Microsoft Clustering. Algorytm Microsoft Decision Trees składa się tak naprawdę z czterech podstawowych algorytmów i opiera się na klasyfikacji pojęć. Algorytm konstruuje drzewo przewidujące wartości jednej z kolumn na podstawie innych, wchodzących w skład zbioru trenującego (np. tabeli faktów). Algorytm decyduje o pozycji węzła w drzewie, przy czym najbardziej znaczące atrybuty są umieszczane bliżej korzenia. Implementacja Microsoft Decision Trees może być wykorzystana do określenia grupy osób (lub wręcz jednostek), które najprawdopodobniej klikną na dany banner albo kupią określony produkt przy użyciu witryny e-commerce. Algorytm Microsoft Clustering wyznacza najbliższe sobie elementy, grupując rekordy, by odnaleźć ukryte zależności (które często nie są widoczne na pierwszy rzut oka). Na przykład, Microsoft Clustering pozwala ocenić zakupy użytkowników w zależności od wieku. Oczywiście, zintegrowane usługi eksploracji danych w SQL Server 2000 pozwalają na wykorzystanie algorytmów wynalezionych przez firmy trzecie.
Wsparcie dla eksploracji danych jest jądrem usług analitycznych
w SQL Server 2000. Nowe kreatory, narzędzia do edycji i inne elementy interfejsu użytkownika pozwalają na uproszczenie procesu projektowania, tworzenia
(i trenowania), a także przeglądania różnych modeli eksploracji danych. Wyniki analizy mogą być wykorzystane przy tworzeniu kostek OLAP. Składnia MDX w SQL Server 2000 została rozszerzona tak, by pozwalała na programową manipulację modeli eksploracji danych w połączeniu z kostkami OLAP.
Rysunek 3: Edytor Data Mining wyświetla wynik eksploracji danych (tu wykorzystano algorytm Microsoft Decision Trees).
Zintegrowane usługi eksploracji danych są kluczowym elementem strategii Microsoftu polegającej na dostarczaniu takich narzędzi, które pozwolą na:
Gromadzenie informacji dotyczących zachowania się klientów odwiedzających witrynę (jakie informacje były poszukiwane itp.).
Analizę tych informacji pozwalającą odkryć pojawiające się trendy
i przewidywać dalsze ruchy poszczególnych grup klientów (dzięki usługom eksploracji danych).
Personifikację zawartości witryny dostosowanej do profilu użytkownika powstałego na podstawie analizy (np. wyświetlanie odpowiednich bannerów).
Przeniesienie decyzji z powrotem na poziom operacyjny dzięki akcjom OLAP (zdarzeniom zgłaszanym w momencie wykonywania określonych operacji na kostce).
Powinien być to proces ciągły, który zapewni witrynie e-commerce dostosowanie się do swoich klientów, i wyróżnienie się na tle konkurencji. Dzięki integracji z Commerce Server 2000 znacznie łatwiej jest gromadzić informacje o zachowaniu się użytkowników witryny (poszczególnych kliknięciach, zawieranych transakcjach, historii zakupów i innych wyróżnikach aktywności użytkownika), co umożliwia uzyskanie całościowego obrazu operacji wykonywanych na witrynie. Dzięki temu możliwe jest opracowanie nowych strategii marketingowych, promocji czy kampanii reklamowych. Tego typu informacje mogą być także zintegrowane z systemami ERP i CRM, co pozwala nawet na dostosowanie łańcucha dostaw do potrzeb klientów.
Połączone kostki i dostęp za pośrednictwem HTTP do informacji OLAP
Jak tylko organizacja uzyska więcej danych pochodzących od swoich klientów, pojawia się pytanie o efektywną analizę danych, by uzyskać z nich rzeczywiste informacje. Usługi analityczne SQL Server 2000 pozwalają na stosowanie połączonych kostek i na dostęp za pośrednictwem HTTP do danych OLAP. Dzięki temu analiza może być oparta na WWW i co więcej, pozwala na wykorzystanie informacji przechowywanych przez partnerów lub firmy zajmujące się wyrafinowaną analizą i gromadzeniem danych.
Połączone kostki to takie kostki, które przechowywane są na innych serwerach analitycznych, włączając w to serwery znajdujące się poza korporacyjnym firewallem. Dla końcowego użytkownika nie ma różnicy pomiędzy połączonymi kostkami a standardowymi, przechowywanymi na konkretnym serwerze. Połączone kostki pozwalają usługodawcom dostarczającym dane przechowywać (i administrować) kostki na jednym serwerze centralnym, a równocześnie udostępniać kostki na kilku innych serwerach. Źródło danych może być dostępne zarówno za pośrednictwem HTTP, jak i HTTPS. Połączone kostki wykorzystują wyliczone agregacje na źródłowym serwerze, i nie muszą być przechowywane lokalnie. Dzięki takiej technologii korporacja może centralnie aktualizować kostkę, na potężnym serwerze, a równocześnie udostępniać ją wielu klientom. Równocześnie znacznie łatwiej jest zapewnić bezpieczeństwo danych - mogą być przechowywane na centralnym, bezpiecznym serwerze, a na innych udostępnione jako połączone kostki. Możliwość definiowania wirtualnych kostek pozwala łączyć zewnętrzne (połączone) kostki, pochodzące np. z firm prowadzących badania marketingowe z wewnętrznymi danymi dotyczącymi sprzedaży. Dzięki temu można tworzyć narzędzia analityczne na zupełnie innym poziomie, pozwalające oszacować wielkość danego segmentu rynku czy określić przyszłe trendy.
Jest bardzo ważne, by użytkownik końcowy miał łatwą możliwość samodzielnej analizy OLAP (także analizy, gdzie interfejs oparty jest na WWW).
W SQL Server 2000, usługi analityczne wykorzystują specjalny moduł nasłuchowy (listener) wbudowany w serwer, by dostęp do kostki odbywał się także za pośrednictwem HTTP. Korporacja może dzielić kostki lub pozwalać na bezpieczny zdalny dostęp bez otwierania dedykowanych portów na serwerze WWW.
Bezpieczne wynajmowanie aplikacji
Coraz więcej firm decyduje się na zlecenie obsługi swoich aplikacji firmom zewnętrznym (outsourcing) — od e-commerce po zasoby ludzkie czy magazyny online — Application Server Providers (ASP). W tej chwili następuje rozkwit usług związanych z ASP. Aby zapewnić najlepszą obsługę swoich klientów,
a równocześnie dostosowywać środki do potrzeb, ASP muszą najbardziej optymalnie wykorzystywać zasoby sprzętowe. W rezultacie, ASP często uruchamia wiele aplikacji równolegle na jednym serwerze. Gdy aplikacje korzystają z baz danych, oznacza to, że wiele baz działa równolegle na tym samym serwerze bazodanowym. SQL Server 2000 wpiera wieloinstancyjność, pozwalając na łatwiejsze dostosowywanie się ASP do potrzeb klientów przy równoczesnym panowaniu nad budżetem przeznaczonym na sprzęt. Wieloinstancyjność pozwala, by na jednej maszynie równolegle działało wiele instancji SQL Server. Dzięki temu rośnie niezawodność serwera, ponieważ nieprawidłowo zachowujące się aplikacje (np. uszkadzające bazę danych) nie mają wpływu na inne instancje. Poziom izolacji osiągany dzięki wieloinstancyjności zapewnia, że tylko wadliwie działająca aplikacja i jej instancja serwera bazodanowego przestanie działać, podczas gdy pozostałe aplikacje i serwery nie przerwą pracy. Wieloinstancyjność pozwala także, by zespoły programistyczne wykorzystywały ten sam serwer do testowania różnych aplikacji, bez niebezpieczeństwa interferencji różnych rozwiązań.
W SQL Server 2000 wprowadzono także nowy sposób dystrybucji dysków instalacyjnych. ASP (czy inne firmy) może zainstalować SQL Server 2000 wraz ze wszystkimi niezbędnymi bazami, zatrzymywać odpowiednią instancję, sklonować instalację, a następnie przenieść sklonowane informacje na inne maszyny (w razie potrzeby). W trakcie pierwszego uruchomienia można zmienić nazwę serwera. Bardzo upraszcza to tworzenie jednolitych baz na farmie serwerów.
Wysoka skalowalność, dostępność i niezawodność
Wraz z SQL Server 7.0 na rynku pojawiła się najnowocześniejsza architektura serwera bazodanowego. SQL Server 2000 został zbudowany na tej samej architekturze. Duży nacisk został położony na zapewnienie wysokiej dostępności, niezawodności i skalowalności serwera, wymaganej przy najbardziej rozbudowanych aplikacjach typu enterprise (działających na odpowiednich serwerach). Dowiódł tego osiągnięty przez SQL Server 2000 światowy rekord w dziedzinie wydajności - znacznie dystansując konkurencyjne rozwiązania bez względu na to, na jakich maszynach, bądź w jakim systemie operacyjnym uruchamiane były serwery bazodanowe konkurencji. Co więcej w chwili obecnej, ograniczenia nakładane na wydajność czy skalowalność wynikające z ograniczeń sprzętowych zanikają. Wszystkie te cechy sprawiają, że platforma .NET z SQL Server 2000 jest odpowiednim rozwiązaniem, pozwalającym zaspokoić także przyszłe potrzeby przedsiębiorstwa.
Jednyną z bardziej istotnych nowości w serwerach .NET Enterprise jest koncepcja skalowania wszerz (lub inaczej poziomego). Już dawniej, Windows DNA zapewniał technologie skalowania wszerz na poziomie usług Web i na poziomie warstwy środkowej (serwera aplikacyjnego). Aplikacje bez trudności korzystały z coraz to nowych serwerów dodawanych do farmy. Do teraz, technologia skalowania wszerz nie była rozwiązaniem “dostępnym z pudełka” w przypadku warstwy obsługującej dane. SQL Server 2000 to pierwszy serwer bazodanowy Microsoft pozwalający by warstwa danych skalowała się wszerz, dzięki wykorzystaniu technologii rozproszonych widoków (SQL Server można także skalować w górę).
W niedługim czasie pojawią się zupełnie nowe możliwości pozwalające jeszcze bardziej zwiększyć skalowalność i wydajność rozwiązań działających na platformie Microsoft. W połowie 2000 roku prawdopodobnie dostępne będą serwery oparte na 16 lub 32 procesorach Intel Pentium III, znacznie przewyższające mocą istniejące serwery ośmioprocesorowe. W tym samym roku powinien zostać wprowadzony 64-bitowy procesor (platforma Itanium), a także specjalne 64-bitowe wersje Windows 2000 i SQL Server 2000. Takie rozwiązania pozwolą konstruować systemy wykorzystujące terabajtowe pamięci i uruchamiające najbardziej złożone aplikacje.
Skalowalność i dostępność dla rozwiązań
typu E-Commerce
SQL Server 2000 może obsługiwać witryny internetowe o dowolnej wielkości, bądź przechowywać informacje związane z olbrzymimi systemami typu enterprise. Dzięki rozproszonym widokom i transferowi logu może rozkładać obciążanie pomiędzy serwery. Równocześnie w pełni wykorzystywana jest architektura SMP dzięki równoległym operacjom.
Rozproszone widoki
Rozproszone widoki (Distributed Partitioned Views) dzielą obciążenie bazy danych pomiędzy grupę serwerów SQL przy założeniu poziomego podziału danych (czyli określeniu zakresu rekordów obsługiwanych przez każdy z serwerów). Każda z maszyn działa w pełni autonomicznie. Z punktu widzenia aplikacji, taki podział nic nie zmienia. Aplikacja zawsze “widzi” wszystkie informacje, bez względu na jakim serwerze fizycznie się znajdują. Każdy z serwerów akceptuje zarówno zapytania, jak i kwerendy aktualizujące, przeglądanie danych itp. Procesor kwerend w SQL Server 2000 zawiera wiele elementów zapewniających aktualizację danych za pośrednictwem takiego widoku, czy że zapytania dotyczące danego zakresu danych są kierowane do odpowiedniego serwera.
Działanie rozproszonych widoków opiera się na implementacji klastrów typu “shared-nothing”. Ta technologia konstruowania klastrów jest znacznie pewniejsza niż technologia ze współdzieloną macierzą dyskową, ponieważ nie istnieje pojedynczy punkt awarii ani wąskie gardło systemu komputerowego.
W SQL Server 2000, klastry “shared-nothing” są zaimplementowane jako “federacja” niezależnie administrowanych serwerów, które kooperują w celu obsłużenia wszystkich żądań. Jest to ogromny krok w kierunku centralnie zarządzanego klastra “shared-nothing”.
W lipcu 2000, Microsoft zaprezentował światowy rekord w testach TPC-C (współczynnik ceny do wydajności), dystansując konkurencję bez względu na platformę, na jakiej działały inne systemy. Ten wynik został osiągnięty na maszynach Compaq z zainstalowanym Windows 2000 Advanced Server
i SQL Server 2000 Enterprise Edition. Natomiast technologią, która pozwoliła osiągnąć taki wynik były właśnie rozproszone widoki.
Więcej informacji na temat rozproszonych widoków można znaleźć w “Microsoft SQL Server MegaServers: Achieving Software Scale Out” pod adresem: msdn.microsoft.com/sqlserver
Dystrybucja logu
Dystrybucja logu (Log Shipping) jest w pełni zintegrowaną usługą wbudowaną po raz pierwszy w SQL Server 2000. Dzięki temu można konstruować “gotowe” serwery zapasowe typu standby automatycznie uaktualniając je przekazując log z działającej instancji bazy. Jeżeli często będzie wykonywana kopia zapasowa pliku log z bazy źródłowej i odtwarzana na bazie docelowej, to tak naprawdę baza docelowa będzie niemal zawsze zsynchronizowana ze źródłem. Dzięki temu tanim kosztem rośnie z jednej strony dostępność bazy, a równocześnie system ma znacznie większą skalowalność (skomplikowane zapytania do generowania raportów mogą być przetwarzane przez zapasowy serwer).
Nowe elementy wykorzystujące architekturę SMP
SQL Server 2000 znacznie więcej operacji wykonuje w pełni wykorzystując architekturę SMP (Symmetric Multiprocessing), począwszy od maszyn z dwoma procesorami (w niewielkich zastosowaniach), aż po architektury 16- i 32-procesorowe w centrach obliczeniowych firm z listy Fortune 500.
SQL Server 2000 pozwala na równoległe tworzenie indeksów, dzięki temu, że generowanie głównego indeksu jest rozbijane na “podindeksy” obejmujące wycinek danych. Oddzielne wątki (uruchamiane na oddzielnych procesorach, jeżeli jest to tylko możliwe) tworzą podindeksy dzięki możliwości równoległego skanowania (przeglądania) danych. Po zakończeniu generowania podindeksów, wątek nadrzędny łączy je w jedno. Ta cecha SQL Server 2000 jest bardzo ważna zwłaszcza dla baz danych, na których wykonywanych jest bardzo dużo transakcji aktualizujących, ponieważ wymagają one odbudowy indeksu. Podobnie czas równoległego generowania indeksów na terabajtowych hurtowniach danych został znacznie skrócony (jednowątkowo trwałby godzinami).
Narzędzie DBCC także korzysta z większej mocy systemów wieloprocesorowych. Operacje wykonywane są w równoległych wątkach, co sprawia że ich czas działania zależy od liczby dostępnych procesorów. Większa wydajność DBCC wynika także stąd, że jest możliwa znacznie wyższa współbieżność, ponieważ stosowany jest inny typ blokady nakładanej na cała tabelę (Schema Stability Lock, a nie shared lock). Więcej informacji można znaleźć w dokumentacji SQL Server 2000 (Books Online).
Skalowalność i niezawodność w rozwiązaniach typu Line-of-Business
Jeżeli korporacja inwestuje w aplikację niezbędna do prawidłowego działania firmy, musi upewnić się, że produkt będzie się dobrze skalował, by odpowiadał bieżącym i przyszłym potrzebom firmy. SQL Server 2000 zawiera rozszerzone wsparcie dla klastrów typu “failover” pozwalających nieprzerwanie funkcjonować aplikacji nawet po uszkodzeniu niektórych z serwerów.
SQL Server 2000 może adresować do 64 GB RAM i wykorzystywać do 32 procesorów. Aby przyspieszyć komunikację pomiędzy serwerami,
SQL Server 2000 ma wbudowaną obsługę technologii SAN (system area networks) pozwalającą na tworzenie szybkich wewnętrznych połączeń w klastrze.
Nowe cechy klastrów typu “failover”
W SQL Server 2000 klastry typu “failover” są zarówno prostsze w użyciu, jak i bardziej elastyczne w zastosowaniu w wersji Enterprise. Instalacja, tworzenie, konfiguracja i utrzymanie klastrów polega na odpowiednim wyborze opcji programu instalacyjnego, czy skorzystania ze zintegrowanego narzędzia do zarządzania SQL Server Enterprise Manager. SQL Server 2000 automatycznie wykrywa istnienie Microsoft Cluster Services, tak że nie jest potrzebny oddzielny kreator do tworzenia klastrów. Podczas instalacji można nawet dodawać lub usuwać węzły. Z poziomu Enterprise Manager można reinstalować czy odbudowywać konfigurację dowolnego węzła, nie wpływając na pozostałe elementy tworzące klaster. Co więcej klastry typu “failover” obsługują także replikację, rozproszone widoki czy inne aplikacje, które wymagają do swojego działania nazwy serwera.
Rozszerzenia operacyjne pozwalają na łatwe manipulowanie aktywnym węzłem w klastrze. Dzięki Windows 2000 Advanced Server w konfiguracji typu “Active-Passive”, instancja SQL Server 2000 działa na głównej maszynie, podczas gdy zapasowa instancja jest bezczynna (aż do wystąpienia usterki). W przypadku konfiguracji typu “Active-Active”, SQL Server 2000 działa równolegle na wielu serwerach, z różnymi (dodatkowymi) bazami danych, pozwalając firmom z bardziej ograniczonymi wymaganiami sprzętowymi (np. bez wyznaczonego systemu zapasowego) na korzystanie z zalet klastra.
W Windows 2000 DataCenter Server, SQL Server 2000 Enterprise Edition pozwala na konstrukcję klastrów o czterech węzłach. Gdy jeden z węzłów
przestanie działać, SQL Server i zasoby systemu operacyjnego mogą dalej działać dzięki informacjom z dowolnego innego elementu klastra.
Olbrzymia pamięć i wsparcie dla SMP
Na Windows 2000 DataCenter Server, SQL Server 2000 może korzystać nawet z 64 GB RAM i do 32 procesorów. Skalowaniu w górę może towarzyszyć skalowanie wszerz, co pozwala obsługiwać gigantyczne ilości danych
i najwyższe obciążenie transakcjami.
Wsparcie dla VI SAN
Wsparcie VI SAN (Virtual Interface System Area Network) wbudowane
w SQL Server 2000 pozwala na bezpośrednią komunikację serwera bazodanowego z urządzeniami podłączonymi za pośrednictwem interfejsu SAN (co pozwala przesyłać olbrzymie ilości danych przy minimalnym opóźnieniu). Microsoft współpracuje z Giganet (cLan) i Compaq (Servernet 2), by móc zaoferować bezpośrednie wsparcie dla urządzeń SAN.
Skalowanie aplikacji na nową klasę urządzeń
SQL Server 7.0 pozwalał na opracowywanie rozwiązań działających na laptopach, które również mogły pracować na SQL Server 7.0 Enterprise Edition. Dzięki SQL Server 2000 Windows CE Edition rozwiązania oparte o SQL Server mogą pracować także na nowej klasie urządzeń przenośnych lub służyć do opracowywania rozwiązań osadzonych (automatyzujących sprzedaż, dystrybucję usług czy obsługujących nawet kioski uliczne).
SQL Server 2000 Windows CE Edition pozwala, by programiści korzystali ze wspólnego interfejsu programistycznego(API). Aplikacja może być tworzona z wykorzystaniem posiadanego już doświadczenia w narzędziach, takich jak Visual Basic® czy Visual C++®, przy zastosowaniu tego samego modelu dostępu do danych (OLE DB i ADO).
SQL Server 2000 Windows CE Edition pozwala skorzystać ze wszystkich podstawowych cech funkcjonalnych pełnego serwera bazodanowego przy równoczesnym utrzymaniu małego narzutu (z uwagi na możliwości urządzeń przenośnych). SQL Server 2000 Windows CE Edition może działać na wszystkich głównych platformach, na których działa Windows CE. Zapewnia: solidne i pewne miejsce przechowywania danych, procesor kwerend upraszczający złożone wyrażenia SQL a także usługi dwukierunkowej replikacji typu “merge” pozwalającą synchronizować dane pomiędzy aplikacją działającą na naręcznym komputerze a centralną bazą SQL Server 2000.
Skalowalność i niezawodność dla potrzeb hurtowni danych
Hurtownie danych i zaawansowana analiza stawia zupełnie inne wyzwania przed serwerem bazodanowym. Wymagany jest szybki dostęp do przechowywanych informacji, możliwość efektywnego wykonywania złożonych zapytań (także na danych wielowymiarowych, pochodzących z kostek), a także obsługa olbrzymich tabel. By to osiągnąć, w SQL Server 2000 wbudowano wiele nowych mechanizmów.
Indeksowane widoki
Złożone raporty są często spotykane w aplikacjach zarządzających hurtowniami danych, co znacząco obciąża serwer bazodanowy podczas przetwarzania zapytań. Jeżeli kwerendy oparte są o widoki, wydajność może zmniejszać się gwałtownie, ponieważ baza dynamicznie łączy niezbędne operacje generujące widok z poleceniami tworzącymi początkowe zapytanie. W wyniku powstaje bardzo złożona kwerenda, której część ściśle związana jest ze sposobem zdefiniowania widoku. Narzut związany z takimi obliczeniami może być bardzo duży, zwłaszcza, gdy widok (zawierający złożone przetwarzanie) operuje na dużej liczbie wierszy (np. ma za zadanie grupować duże zbiory danych czy wykonuje wielokrotne połączenia). Ponieważ wynik działania widoku nie jest przechowywany w bazie (w przypadku standardowych widoków), kolejne odwołanie do danego widoku powoduje, że dane informacje przetwarzane są ponownie.
SQL Server 2000 pozwala na znaczne skrócenie czasu dostępu do widoku, ponieważ można zdefiniować na widoku unikatowy indeks fizycznie porządkujący (clustered index). Po określeniu takiego indeksu, widok jest uruchamiany, a wynik przechowywany w bazie danych w taki sam sposób, jak tabela z indeksem fizycznie porządkującym. Taki sposób działania utrwala wynik kwerendy w bazie danych. Optymalizator kwerend wbudowany w SQL Server wykorzysta indeks oparty na widoku w kwerendach, które nie mają określonej bezpośrednio nazwy widoku we frazie FROM. Istniejące kwerendy od razu zaczną być wykonywane znacznie szybciej bez ponownego kodowania. W niektórych przypadkach wydajność operacji na widoku wzrośnie wykładniczo!
Implementacja indeksów na widokach zastosowana w SQL Server 2000 jest rozwiązaniem unikatowym na rynku. Konkurencyjne produkty implementujące indeksowane lub utrwalane widoki wymagają, by kwerendy były w specjalny sposób kodowane, tak-by zawierały wskazówki określające że procesor kwerend ma skorzystać z utrwalonego widoku. Jak już wspomniano, implementacja indeksów opartych na widokach zastosowana w SQL Server 2000 nie wymaga powtórnego kodowania żadnego z zapytań - procesor kwerend w SQL Server automatycznie rozpozna i wykorzysta indeksowane widoki bez interwencji administratora serwera.
Rozproszone partycje kostki
Rozproszone partycje kostek (Distributed Partitioned Cubes) pozwalają na wygodne skalowanie wszerz SQL Server 2000. Aby skonfigurować elastyczny sposób przechowywania danych, a równocześnie zwiększyć wydajność kwerend, programiści mogą wykorzystać Partition Wizard by podzielić kostkę pomiędzy kilka oddzielnych serwerów, bez zmian w kodzie aplikacji - z punktu widzenia programu kostka zachowywać się będzie tak, jakby znajdowała się na jednym serwerze.
Rysunek 4: Dzięki nowemu Partition Wizard konfiguracja rozproszonych kostek jest bardzo prosta.
Analiza dużych zestawów danych
Usługi analityczne wbudowane w SQL Server 2000 pozwalają na tworzenie wymiarów liczących kilka milionów elementów (przy kostce typu MOLAP, czyli Multidimensional OLAP) dzięki wykorzystaniu do 64 GB pamięci. W wypadku wymiarów definiowanych na kostkach ROLAP (Relational OLAP), gdzie informacje o wymiarach przechowywane są w relacyjnych tabelach, usługi analityczne pozwalają na efektywną obsługę setek milionów elementów. Model przechowywania typu ROLAP powoduje, ze agregacje są przechowywane w relacyjnych tabelach, które nie podlegają ograniczeniom wynikającym z modelu MOLAP. W niektórych przypadkach zamiast tabel, tworzone są indeksowane widoki (jeżeli dane źródłowe przechowywane są na SQL Server 2000 i zachodzą pewne dodatkowe warunki). Kreator partycji może być uruchomiony z poziomu Analysis Manager i poprowadzi krok po kroku przez wszystkie operacje niezbędne do podzielenia kostki logicznej pomiędzy fizycznie rozdzielone partycje.
W przeciwieństwie do technologii przechowywania MOLAP, ROLAP nie przechowuje kopii danych źródłowych. Gdy żądanych informacji nie można wydobyć z wyliczonych agregatów czy pamięci podręcznej klienta, następuje odwołanie do tabeli faktów. Korzystając z modelu ROLAP należy spodziewać się wolniejszego przeważania zapytań niż w przypadku dwu innych technologii, MOLAP i HOLAP (Hybrid OLAP, gdzie część informacji jest kopiowanych do kostki, a część pochodzi z tabel bazowych). Typowe aplikacje korzystają z ROLAP w sytuacjach, gdy analiza na danym zestawie danych nie jest
wykonywana często (dane historyczne) albo zbiór informacji jest za duży, by mógł być przechowywany w kostkach typu MOLAP lub HOLAP.
Czas działania, dostępność i niezawodność
Skalowalność jest bardzo ważna, ale tak naprawdę najważniejsze jest zapewnienie nieprzerwanej pracy serwera bazodanowego.
W SQL Server 2000, większość operacji może być wykonywana on-line, co powoduje, że serwer może cały czas działać, bez względu na operacje administracyjne. Nowe technologie tworzenia kopii zapasowych powodują, że fakt wykonywania kopii nie ma wpływu na wydajność pracy serwera czy jego dostępność.
Więcej operacji on-line
W przypadku baz danych, które często są aktualizowane, czas nieprzerwanego działania silnie zależy od tego, jak często aktualizowany jest stan indeksów.
Z tego powodu większość operacji administracyjnych musi być wykonywana,
w czasie gdy jest najniższe obciążenie serwera, a czasami nawet dopiero wtedy, gdy nikt na nim nie pracuje. W SQL Server 2000, reorganizacja indeksów może być wykonywana online, z minimalnym wpływem na wydajność serwera, nawet w przypadku bardzo zaawansowanych systemów OLTP. Dodatkowo, reorganizacja indeksów nie wymaga olbrzymich ilości miejsca w bazie danych. Co więcej, jest operacją, która jak i inne aktualizacje, jest zapamiętywana w logu (by można było odtworzyć stan bazy przed rozpoczęciem operacji) i może być zatrzymywana, a następnie ponownie uruchamiana.
Różnicowe kopie baz danych
SQL Server 2000 pozwala na tworzenie różnicowych kopii zapasowych. Tego typu kopia zawiera tylko te strony z bazy, które uległy zmianie od czasu ostatniej kopii. Dzięki takiemu podejściu, tworzenie kopii zapasowej jest bardzo szybkie, a dodatkowo kopie są znacznie mniejsze niż przy innych typach archiwizacji. Co najważniejsze, kopie różnicowe mogą być wykonywane w czasie pracy użytkowników na danej bazie danych. Dzięki temu, że przygotowanie tego typu kopii zapasowej jest znacznie szybsze niż w przypadku innych technik archiwizacji, a zarazem ma minimalny wpływ na wydajność serwera, można go wykonywać często, zmniejszając tym samym ryzyko utraty danych.
Kopie typu “Server-less”
Inną nową możliwością SQL Server 2000, która sprawia, że czas nieprzerwanego działania może być jeszcze dłuższy, są kopie typu “server-
-less”. Odpowiadają one kopiom pełnej bazy danych (lub kopiom pliku/grupy plików), ale mogą być wykonywane bez żadnego wpływu na wydajność serwera (stąd termin “server-less”).
Kopie typu “server-less” wymagają zastosowania specjalnych interfejsów aplikacyjnych dostarczanych przez firmy trzecie (VDI), które pozwalają na bezpośrednią komunikacje z zaawansowanym systemem przechowywania danych, który obsługuje tzw. “split mirror” albo pozwala na kopiowanie
w trakcie zapisu. Kopia typu “server-less” często jest wykorzystywana
w scenariuszu z 3-kierunkowym mirroringiem. Aplikacja VDI może “przerwać” jeden z mirrorów (dwa inne nadal obsługują użytkowników) i albo wykonać kopię na taśmę, albo udostępnić dysk innemu systemowi. Następnie, kopia może być natychmiast dostępna jako serwer zapasowy typu “standby”. Kopie “server-less” mogą być odzyskiwane bardzo szybko, jeżeli znajdują się na dysku. Nie jest zaskoczeniem, że odzyskiwanie z taśmy zajmuje więcej czasu.
Kopie “server-less” mogą być wykorzystywane na wiele różnych sposobów. Oprócz technologii tworzenia gotowych serwerów typu standby, mogą służyć do tworzenia baz będących podstawą generowania raportów lub też przeznaczonych do testów, bez żadnego wpływu na serwer produkcyjny.
SQL Server przechowuje historię kopii “server-less” w MSDB, co pozwala dalej synchronizować bazę przy użyciu różnicowych kopii czy kopii log.
Szybkie dostarczenie rozwiązania na rynek
SQL Server to baza danych szczególnie często wybierana w sytuacjach, gdy jest bardzo ważne szybkie wprowadzenie produktu na rynek. Łatwość zarządzania, a zarazem tworzenia aplikacji wysoki poziom zintegrowanych narzędzi i usług sprawiają, że SQL Server jest najczęściej wybieraną bazą danych dla rozwiązań opartych na Internecie, gdy dostarczenie produktu przed konkurencją jest kluczem do sukcesu. W SQL Server 2000 wprowadzono rozszerzone narzędzia ułatwiające zarządzanie i automatyzujące utrzymanie bazy danych, a także specjalne pakiety przyspieszające proces samego tworzenia aplikacji. Nowe usługi związane są ze śledzeniem kodu czy transformacją danych. Wszystkie te elementy doskonale integrują się
z pozostałymi elementami tworzącymi platformę Windows DNA 2000.
Narzędzia wspomagające zarządzanie SQL Server są proste w użyciu, ale zarazem maja potężne możliwości. Dzięki spójnemu interfejsowi programista lub administrator bazy danych bez trudu może posługiwać się nowymi aplikacjami administracyjnymi. Równocześnie w każdym z narzędzi można znaleźć opcje pozwalające na precyzyjne dostrojenie serwera. Warto dodać, że SQL Server 2000 zawiera unikatowe możliwości automatycznego strojenia, uwzględniające rzeczywiste obciążenie motoru bazy danych.
Uproszczone zarządzanie i strojenie
SQL Server 2000 dostarcza technologie pozwalające na utrzymanie na najniższym poziomie koszty związanych z zarządzaniem, utrzymaniem
i strojeniem serwera bazodanowego. Administratorzy co roku mają pod opieką coraz to więcej baz danych, tak więc scentralizowane zarządzanie jest dla nich bardzo ważne. SQL Server 2000 pozwala na centralne zarządzanie, ale równocześnie redukuje (tak bardzo, jak tylko jest to możliwe) konieczność wykonywania standardowych operacji. Warto podkreślić, że jeżeli w danym scenariuszu nie można skorzystać z automatycznego zarządzania, narzędzia administracyjne SQL Server 2000 oferują odpowiednie kreatory, prowadzące krok po kroku przez skomplikowane zadania administracyjne.
Integracja z usługami katalogowymi
Integracja SQL Server 2000 i usług katalogowych (Active Directory) Windows 2000 pozwala na wspólne zarządzanie bazami danych i innymi zasobami dostępnymi w przedsiębiorstwie.
Serwery wraz ze swoimi atrybutami są automatycznie rejestrowane w strukturze usług katalogowych (podczas uruchamiania instancji serwera). Administrator może następne wyszukiwać i dokładnie lokalizować poszczególne serwery. Możliwe jest na przykład znalezienie (przy użyciu usług katalogowych) wszystkich instancji serwerów, które mają bazę danych o konkretnej nazwie. Usługi wyszukiwania pozwalają odpowiedzieć na pytania typu “Jakie serwery SQL Server są podłączone do sieci). Usługi katalogowe wyświetlają także listę publikacji (przy mechanizmach replikacji), kostki czy modele służące do eksploracji danych. Odpowiednie pozycje katalogowe są automatycznie tworzone jak tylko utworzony zostanie dany zasób na serwerze bazodanowym. Można je przeglądać używając np. Explorer. Identyfikacja SQL Server 2000 nie zależy od maszyny czy miejsca podłączenia komputera do sieci - aliasy
w usługach katalogowych zostają takie same nawet po przeniesieniu SQL Server 2000 na inną maszynę.
Rysunek 5: Użytkownicy mogą przeszukiwać katalogi w poszukiwaniu serwerów SQL.
Dynamiczne zarządzanie i samostrojenie
Bazy danych muszą być strojone, by mogły osiągnąć optymalną wydajność wymaganą przez użytkowników, jednak nie ma jednego “zawsze prawdziwego” sposobu optymalizacji. Każda optymalizacja musi być dostosowana do konkretnej sytuacji. Największym wyzwaniem dla administratora jest odkrycie często zmieniających się zestawów danych, a także analiza sposobu pracy użytkowników i aplikacji, co umożliwi dalszą optymalizację motoru bazodanowego. Tak naprawdę utrzymanie zoptymalizowanego serwera wymaga ciągłej pracy i analizy zmieniających się warunków.
SQL Server część z tych operacji wykonuje samodzielnie. W SQL Server 2000, wiele zwykle statycznych parametrów określających konfigurację serwera zostało zastąpionych zmiennymi dynamicznymi, zależnymi od informacji zwrotnej i wewnętrznych statystyk motoru bazy danych. W szczególności wiele nowych algorytmów automatycznie optymalizuje wykorzystanie najnowszych osiągnięć technicznych, w tym dużej pamięci, bardzo szybkich dysków twardych i połączeń SAN. SQL Profiler zawiera nowe zdarzenia określające zmiany wielkości plików tworzących bazę danych (Data File Auto Grow, Data File Auto Shrink, Log File Auto Grow i Log File Auto Shrink). Dzięki tym zdarzeniom administrator może monitorować sytuacje, w których aktywują się mechanizmy automatycznego strojenia. Możliwe jest także przechwytywanie tych zdarzeń w warunkach produkcyjnych i przekierowywanie ich do baz testowych, co pozwala programistom dokładnie analizować operacje zachodzące w działającej aplikacji. Aplikacja może także samodzielnie optymalizować parametry działania SQL Server dzięki wbudowanym w SQL Profiler procedurom przechowywanym.
Kreator kopiowania baz danych
SQL Serwer zawiera nowy kreator pozwalający skopiować (czy przenosić bazę danych) przy równoczesnym zminimalizowaniu niezbędnego czasu, gdy baza danych jest niedostępna. Kreator jest bardzo pomocny przy inicjowaniu środowiska testowego, przenoszeniu bazy danych pomiędzy maszynami (czy instancjami), migracji związanej z rozbudową sprzętu lub ze zmianą
SQL Server 7.0 na SQL Server 2000.
Kreator może działać na serwerze źródłowym, serwerze docelowym albo na dowolnym innym komputerze. Bez względu na to, gdzie kreator zostanie uruchomiony, jest implementowany jako zadanie DTS (pakiet działa na docelowej maszynie). Kreator pozwala kopiować obiekty z globalnej przestrzeni nazw, komunikaty o błędach, informacje o użytkownikach i zadaniach. Administrator wybiera, które z baz danych są kopiowane, a które pozostają na oryginalnym (źródłowym) serwerze.
Programowanie, śledzenie i transformacja danych
Aby szybko stworzyć skalowalną aplikację bazodanową, niezbędne są narzędzia automatyzujące proces projektowania i programowania, ale równocześnie umożliwiające bardzo dokładną kontrolę nad przebiegającym procesem. SQL Server 2000 zawiera narzędzia dla programistów pozwalające ocenić wydajność, optymalizować kod, automatyzować proces przenoszenia informacji pomiędzy różnymi źródłami danych, a także szybko tworzyć nowe aplikacje na podstawie istniejącego już kodu. Co więcej w każdym z narzędzi programiści mogą wybierać jeden z obsługiwanych języków interfejsu.
Query Analyzer
SQL Query Analyzer został wyposażony w debugger T-SQL pozwalający krok po kroku monitorować działanie procedur przechowywanych. Debugger dysponuje tradycyjnymi mechanizmami, takimi jak ustawianie pułapek, definiowanie podglądu zmiennych czy krokowe wykonywanie procedur. Programista może podejrzeć zarówno globalne, jak i lokalne zmienne, a także zawartość stosu. Debugger T-SQL może śledzić procedury na serwerze przy równoczesnej analizie statystyki ze strony klienta (co bardzo ułatwia zwiększanie wydajności aplikacji). Dzięki temu, że Query Analyzer ma wbudowaną przeglądarkę obiektów i możliwość definiowania wzorców, jest pełnym środowiskiem przeznaczonym do tworzenia procedur SQL, z którego może skorzystać zarówno początkujący użytkownik, jak i administrator bazy danych.
Usługi transformacji danych
Usługi transformacji danych (Data Transformation Services, DTS) wbudowane w SQL Server 2000 pozwalają przenosić informacje pomiędzy dowolnymi źródłami danych. Zespół projektowy SQL Server starał się zapewnić dużą elastyczność usług DTS, dostarczając równocześnie mechanizmy ułatwiające samo korzystanie z technologii DTS.
Kreator DTS generuje operacje przenoszące klucze główne i obce, co sprawia że ułatwiają automatyczną migrację danych pomiędzy serwerami pochodzącymi od różnych producentów.
W DTS SQL Server 2000 wbudowano nową możliwość, wielofazowego transformowania danych. Oznacza to, że programista może sterować przesyłaniem informacji pomiędzy wieloma interfejsami i definiować własne przekształcenia w wielu punktach transformacji. Wielofazowe przesyłanie danych pozwala na elastyczne zarządzanie całym procesem transformacji, a równocześnie pozwala wbudowywać wyrafinowane procedury obsługi błędów. Źródło danych w pakiecie DTS może być parametryzowane, co pozwala na tworzenie pakietów DTS, które mogą wznawiać operacje po przerwaniu działania. Wystarczy przestawienie jednej opcji w DTS Designer (części SQL Server Enterprise Manager), by programista mógł skorzystać ze specjalnego graficznego interfejsu pozwalającego projektować wielofazową transformację danych.
Pakiety DTS można eksportować do kodu w Visual Basic®. Ułatwia to naukę modelu obiektowego DTS, a co więcej pozwala na dodatkową kontrolę wersji pakietów (dzięki przechowywaniu kolejnych wersji kodu w Microsoft Visual SourceSafe™). Pakiety DTS mogą wywoływać inne pakiety DTS (przypomina to mechanizm wywoływania procedur). Możliwość definiowania nowych zadań, tworzenie transformacji w pełni kontrolowanych przez programistę powiększają obszar zastosowań DTS, a także pozwalają na integrację z produktami pochodzącymi od różnych producentów.
Funkcje definiowane przez użytkownika i inne rozszerzenia dla programistów
Oprócz funkcji wbudowanych w T-SQL, SQL Server 2000 pozwala na tworzenie własnych funkcji. Funkcje definiowane przez użytkownika zaczynają się od frazy CREATE FUNCTION. Są podprocedurami, składającymi się z jednej lub więcej instrukcji T-SQL i mogą być wykorzystywane np. do wyodrębnienia pewnych często powtarzających się wyrażeń SQL. Dzięki własnym funkcjom programista może dodatkowo uporządkować kod (dotychczas jedynym sposobem było tworzenie procedur przechowywanych). Funkcje definiowane przez użytkownika wywołuje się w taki sam sposób, jak funkcje wbudowane T-SQL. Mogą zwracać wartości skalarne (liczby, łańcuchy znaków itp), a także w odróżnieniu od produktów innych dostawców serwerów bazodanowych także typ tablicowy pozwalający przekazać zbiór rekordów.
W SQL Server 2000 wbudowano także inne rozszerzenia dla programistów, w tym:
Kaskadowo aktualizowane więzy integralności - określają, jakie operacje mają być wykonywane w trakcie usuwania lub aktualizacji klucza głównego w sytuacji, gdy do danej wartości odwołuje się jakiś klucz obcy. W poleceniu CREATE TABLE i ALTER TABLE występują nowe instrukcje, ON DELETE i ON UPDATE (po frazie REFERENCES ).
Wyzwalacze INSTEAD OF i AFTER - wyzwalacze typu INSTEAD OF są wykonywane zamiast konkretnej operacji (jak INSERT, UPDATE, DELETE). Taki wyzwalacz może zostać zdefiniowany także na widoku, co pozwala precyzyjnie kontrolować, które z tabel widoku mogą być aktualizowane. Wyzwalacze typu AFTER są wykonywane po zajściu określonej operacji.
Indeksy na wyliczonych kolumnach - można definiować indeksy na wyliczonych kolumnach, tak długo, jak wyrażenia definiujące daną kolumnę spełniają określone warunki (odwołują się tylko do tabeli w której występuje wyliczona kolumna i są deterministyczne, czyli zawsze dla danej wartości parametrów przyjmują tą samą wartość).
Nowe typy danych - bigint to 8-bajtowa liczba całkowita. sql_variant to uniwersalny typ danych pozwalający przechowywać wartości o różnych typach. Nowy typ table pozwala tymczasowo przechowywać wyniki kwerend (zbiory rekordów) do późniejszego wykorzystania. Ten typ może być także zwracany przez funkcje definiowane przez użytkownika.
Język i sposób sortowania ustawiany na poziomie kolumn - obiekty przechowywane w bazie danych mogą pochodzić z różnych języków czy mieć różne sposoby domyślnego sortowania.
Możliwości związane z obsługą wielu języków
SQL Server 2000 Enterprise Edition zawiera narzędzia pozwalające gładko przełączać język interfejsu (w serwerze wbudowana jest obsługa różnych języków). Możliwości narzędzi w każdej z wersji językowych są takie same.
Zintegrowane, rozszerzalne usługi analityczne
Głównym celem usług analitycznych (czyli usług związanych z OLAP) w SQL Server 2000 jest zapewnienie pełnej obsługi platformy przeznaczonej do tworzenia aplikacji analitycznych, w tym zapewnienia efektywnego sposobu przechowywania danych relacyjnych, możliwości wydobywania danych w różnych postaciach, mechanizmów optymalizujących kwerendy (w tym także zapytania wielowymiarowe, MDX), narzędzi do eksploracji danych, a także odpowiedni model semantyczny. Użytkownicy mogą łączyć i dostosowywać różne algorytmy i narzędzia dostarczane bądź przez Microsoft bądź przez firmy trzecie, tak by dana aplikacja analityczna zapewniała odpowiednią funkcjonalność. Usługi analityczne są przeznaczone raczej dla administratorów i programistów niż dla ekspertów statystycznych. Każdy, kto ma solidne podstawy języka Structured Query Language (SQL) i Visual Basic powinien bez trudu móc posługiwać się usługami analitycznymi i zbudować aplikację, z której skorzysta np. statystyk. Na koniec należy podkreślić, że usługi analityczne stanowią część jądra serwera i są dołączane (bez dodatkowych opłat) do niemal wszystkich edycji SQL Server 2000, począwszy od Enterprise, Standard, Developer aż po Enterprise Evaluation Editions.
Wprowadzając usługi OLAP w SQL Server 7.0, Microsoft stał się liderem rozwiązań przeznaczonych dla Business Intelligence. W SQL Server 2000 Microsoft rozszerza funkcjonalność usług analitycznych. Oprócz podstawowych technologii związanych z hurtowniami danych i OLAP, które były już oferowane w SQL Server 7.0, usługi analityczne w SQL Server 2000 zawierają zintegrowane narzędzia do eksploracji danych (patrz też część Eksploracja danych i analiza typu “Business Internet”), z nowymi graficznymi narzędziami pozwalającymi budować i zarządzać danymi i modelami analitycznymi. W SQL Server 2000 można definiować znacznie większe wymiary niż w poprzedniej wersji serwera.
Dzięki narzędziu Analysis Manager w SQL Server 2000, wielu użytkowników może łatwo i wydajnie korzystać z serwera analitycznego. Dzięki możliwości wykorzystania rozproszonych czy zdalnych partycji, dane pochodzące z kostek mogą być rozproszone po wielu serwerach analitycznych przy równoczesnym centralnym administrowaniu kostką bazową (znajdującą się na podstawowym serwerze z metadanymi). Analysis Manager zawiera także dwa nowe narzędzia asystujące przy konstrukcji kostek. Edytor Virtual Cube pozwala na edycję kostek wirtualnych, i funkcjonalnie przypomina znany Cube Editor.
W usługach analitycznych wprowadzono nowe, bardzo elastyczne mechanizmy zarządzania bezpieczeństwem. Prawa dostępu można definiować niemal w dowolny sposób. Dzięki mechanizmowi ról, użytkownik końcowy może mieć ograniczony zakres określany na poziomie wymiaru, poziomu czy elementu. Równocześnie można stosować dowolne kombinacje praw zapisu i odczytu. Można także definiować bezpieczeństwo na poziomie poszczególnych komórek.
W SQL Server 2000 wprowadzono następujące nowe typy wymiarów:
Hierarchiczny (Parent-child) - ten typ wymiaru pozwala obsługiwać hierarchie wynikające z relacji opartych na połączeniach między elementami kolumn w tabeli źródłowej. Przykładem takich hierarchii mogą być szablony prezentujące strukturę organizacji lub składanie produktu z części. Tego typu wymiary są czasami określane jako “nie wyważone”.
Skokowe (Ragged) - ten typ wymiaru występuje wtedy, gdy istnieje co najmniej jeden element, którego logiczny korzeń nie znajduje się na bezpośrednio wyższym poziomie. Przykładem skokowego wymiaru jest sytuacja, gdy w kostce przechowywane są dane podzielone wg podziału administracyjnego. Istnieją kraje, w których nie występuje pojęcie stanu czy prowincji (czegoś pośredniego pomiędzy poziomem “kraj” a poziomem “miasto”).
Zmienny (Changing) - ten typ wymiaru zezwala na znacznie szersze zmiany w danych w stosunku do innych typów wymiarów, bez konieczności tak częstego przeliczania całek kostki. Dzięki temu w sytuacji zmiennych danych źródłowych kostka jest o wiele częściej dostępna dla aplikacji klienckich.
Z możliwością zapisu (Write-enabled) - ten typ wymiaru może być aktualizowany z poziomu Analysis Manager i dowolnej aplikacji klienckiej która udostępnia mechanizm “zapisu z powrotem”. Dzięki mechanizmom ról, możliwa jest kontrola praw dostępu ze strony klientów.
Wirtualne (Virtual) - typ wymiaru, którego elementy są określone za pośrednictwem elementów innego wymiaru.
Akcje OLAP
W czasie gdy użytkownik aplikacji końcowej wykonuje analizę, często zachodzi potrzeba uruchomienia określonej aplikacji w momencie odpowiedniego zgłębienia się w kostce. Akcje OLAP, nowa możliwość usług analitycznych w SQL Server 2000, pozwala, by w trakcie analizy uruchamiane były automatycznie pewne procesy biznesowe. “Akcja OLAP” to taka operacja, którą wyzwala sam fakt wybrania przez użytkownika danego fragmentu kostki. W wyniku operacji może być np. uruchomiony określony program, do którego zostanie przekazany wybrany element jako parametr. Implementując akcje (przy pomocy np. kreatora Action Wizard), programiści mogą przekształcić aplikację kliencką w wyrafinowane narzędzie pozwalające utworzyć sprzężenie zwrotne z systemem typu enterprise. Użytkownik może oprócz tradycyjnej analizy uruchamiać inne rozwiązania, pozwalające dokładniej odkryć np. przyczynę braków.
Aby zrozumieć zastosowanie akcji OLAP, proszę wyobrazić sobie użytkownika końcowego zajmującego się sprzedażą obuwia. Przegląda on kostkę prezentującą stan magazynu i odkrywa, że ilość białych butów znacznie spadła. W związku z tym wybiera on dany fragment kostki, co powoduje, że dzięki akcji OLAP otwierany jest formularz zamówienia na białe obuwie.
Własne podsumowania
Domyślnie, podsumowania na wyższym poziomie są sumą wartości “podrzędnych”. Jednakże to nie wystarcza, zarówno programistom, jak i administratorom baz danych. W usługach analitycznych SQL Server 2000 można definiować własne sposoby generowania podsumowań. Elementy mogą być oznaczane przy użyciu dowolnego z operatorów: +, -, *, /, i ~. Każdy z nich odpowiada odpowiedniej operacji matematycznej. Własne podsumowania (na poziomie nadrzędnym) powstają podczas wyznaczania wartości elementów składowych. W przypadku mnożenia i dzielenia, wartość elementu jest mnożona lub dzielona przez zagregowaną wartość w siostrzanym elemencie. Kolejność wynika z kolejności elementów i samych operatorów (operatory są przechowywane w oddzielnej kolumnie tabeli źródłowej). Znak tyldy (~) oznacza, że dany element nie powinien brać udziału w podsumowaniu.
Własne podsumowania są przyporządkowane do nazwy kolumny. Można je definiować albo podczas tworzenia (jako dodatkowy elementy nowego wymiaru hierarchicznego w kreatorze Dimension Wizard) albo w dowolnym momencie, edytując istniejący wymiar w Dimension Editor lub Cube Editor. Własne podsumowania oferują podobną funkcjonalność, co istniejące własne formuły podsumowań, z tym że mają większe możliwości. Operatory mogą być unikatowe dla każdego poziomu elementów. Formuły podsumowujące dotyczą wszystkich poziomów.
Podsumowanie
Wprowadzając najnowocześniejszą architekturę w dziedzinie serwerów bazodanowych, SQL Server 7.0 był krokiem przełomowym w wersjach SQL Server oferowanych przez Microsoft. SQL Server 7.0 nie tylko zapewnia skalowalność klasy enterprise, wysoką niezawodność i dostępność przy równoczesnym udostępnianiu olbrzymiej liczby funkcji dla programistów. SQL Server 7.0 jest solidną podstawą pozwalającą na dalszy rozwój tej linii produktów Microsoft. W czasie, gdy SQL Server 7.0 był dostępny na rynku, okazało się że jest wybierany jako preferowana baza dla rozwiązań związanych z Customer Relationship Management (CRM), Business Intelligence (BI), Enterprise Resource Planning (ERP), czy innymi aplikacjami krytycznymi dla funkcjonowania przedsiębiorstwa. Wynikało to zwłaszcza z dużej wydajności, łatwości zarządzania, wysokiej skalowalności i dostępności, a także z łatwości programowania. Odniósł sukces jako internetowa baza danych.
Kolejna wersja serwera bazodanowego, SQL Server 2000 jest zbudowana na rozszerzalnej architekturze SQL Server 7.0. SQL Server 2000 kontynuuje tradycję doskonałego konstruowania serwerów bazodanowych. Jest podstawą do tworzenia dalszych produktów z linii SQL Server, począwszy od wersji 64-bitowych i wersji dostosowanej do platformy Windows®- CE (spodziewanych w tym roku) aż po “Yukon,” następną wersję SQL Server.
Microsoft SQL Server 2000 to pełne rozwiązanie bazodanowe i analityczne, pozwalające w krótkim czasie dostarczać kolejną generację skalowalnych aplikacji internetowych. Jako filar platformy Windows DNA, znacznie redukuje niezbędny czas uruchomienia rozwiązań typu e-commerce, line-of-business, czy hurtowni danych przy równoczesnym zapewnieniu wystarczającej skalowalności nawet w najbardziej wymagających środowiskach.
Informacje dla recenzentów i autorów
Słownictwo
Oficjalna nazwa produktu to “Microsoft SQL Server 2000.” W trakcie produkcji, wewnętrzną nazwą kodową serwera był “Shiloh.”
Oficjalną nazwą usług analitycznych (włącznie z OLAP), które zostały zintegrowane z SQL Server 2000 to “Microsoft SQL Server 2000 Analysis Services.”
Testy wydajnościowe i porównania
Microsoft traktuje formalne porównania bardzo poważnie, zwłaszcza jeśli dotyczą systemów bazodanowych. Ten typ porównań jest najwyższym wyzwaniem w przemyśle komputerowym. Z tego powodu, licencja SQL Server zawiera klauzulę zabraniającą publikowanie wyników testów porównawczych bez zgody producenta. Jeżeli czytelnik zainteresowany jest w testowaniu porównawczym jako części procesu badania aplikacji, bardzo ważne jest by skontaktował się z Microsoft. Jesteśmy zainteresowani, w ścisłej współpracy z organizacjami zajmującymi się testowaniem relacyjnych serwerów bazodanowych, by poniesiony wysiłek zaowocował udostępnieniem jak najdokładniejszych informacji.
Zadaniem Microsoft jest dostarczanie klientom najbardziej wydajnych produktów. Aby SQL Server osiągnął ten cel, inżynierowie ciągle zwiększają szybkość działania serwera. Zespół SQL Server jest dumny z tego, że ich baza danych konsekwentnie utrzymuje najwyższe pozycje w rankingu badającym wydajność. Dokładne wyniki pochodzące z analiz przemysłu komputerowego i testów ISV niezależnych producentów oprogramowania są dostępne publicznie.
Przegląd Nowych możliwości SQL Server 20001
|
Wsparcie dla E-Commerce i Internetu |
|
|
|
Element |
Opis |
Enterprise Edition |
Standard Edition |
Personal Edition |
Wsparcie dla standardów internetowych |
Dzięki wszechstronnemu wsparciu standardów W3C (zarówno XML, Xpath, XSL i HTTP) pozwala integrować aplikacje bez pisania choćby linijki kodu. |
|
|
|
Widoki XML |
Dzięki odwzorowywaniu elementów i atrybutów XML na schemat relacyjnej bazy danych można łatwiej uzyskać dostęp do informacji z poziomu technik związanych z XML. |
|
|
|
Dostęp za pośrednictwem URL i HTTP |
Pozwala na dostęp do danych za pośrednictwem URL. Aby zadać pytanie można korzystać ze strukturalnego języka zapytań (SQL), wzorców XML lub XPath w wyrażeniach określających URL. |
|
|
|
SELECT … FOR XML |
Zwraca wynik działania kwerendy SQL w postaci XML umożliwiając łatwą kontrolę postaci wyniku. |
|
|
|
OpenXML |
Pozwala na dostęp i obróbkę dokumentów XML przy użyciu procedur wbudowanych i T-SQL, tak jakby były tabelami bazy danych. |
|
|
|
Datagramy aktualizujące XML2 |
Za pośrednictwem XML można dopisywać, aktualizować i usuwać dane, nawet, jeżeli na drodze do serwera stoi firewall. |
|
|
|
Grupowe ładowanie danych za pośrednictwem XML2 |
Pozwala przetwarzać i wypełniać tabele za pośrednictwem dowolnego źródła danych. |
|
|
|
Wyszukiwanie pełnotekstowe |
Pozwala na wyszukiwanie pełnotekstowe sformatowanych dokumentów (Word, Excel, czy HTML) za pośrednictwem sieci czy intranetu. Automatycznie śledzi zmiany. |
|
|
|
Łatwiejsze kwerendy |
Pozwala zadawać pytania przy użyciu naturalnego języka. Dzięki kreatorom zawartym w środowisku Visual Studio, kwerendy można tworzyć w specjalnym środowisku graficznym, w tym także zapytania MDX analizujące kostki. |
|
|
|
Zintegrowane usługi do eksploracji danych |
Pozwala analizować przechowywane informacje (np. historię operacji wykonywanych przez użytkownika na witrynie, historię sprzedaży) które umożliwiają poznanie istniejących trendów i przewidzieć przyszłość. Pozwala także, by klient otrzymał zestaw informacji ściśle dostosowanych do swoich potrzeb. |
|
|
|
Połączone kostki |
Dzięki łączeniu kostek przetwarzanych na różnych serwerach wydajność analizy gwałtownie rośnie. Dane gromadzone w kostkach mogą być bezpiecznie sprzedawane i udostępniane za pośrednictwem Internetu. |
|
|
|
Dostęp do kostek za pośrednictwem HTTP |
Można uzyskać dostęp do kostek umieszczonych na serwerach ukrytych za firewallem, dzięki modułowi obsługi HTTP wbudowanemu w SQL Server 2000 Enterprise Edition, co pozwala na łatwe tworzenie aplikacji analitycznych opartych o WWW. |
|
|
|
Możliwość uruchomienia wielu instancji SQL na jednej maszynie |
Zwiększa niezawodność, pozwalając, by każda baza danych (lub klient, w wypadku wynajmowania serwera) dysponowała oddzielną instancją SQL Server 2000. |
|
|
|
Bezpieczeństwo |
Domyślnie instalowany jest wyższy poziom zabezpieczeń. Zawiera wsparcie dla połączeń za pośrednictwem Secure Sockets Layer (SSL) i technologii Kerberos. Trwa procedura certyfikacji C2. |
|
|
|
Tworzenie obrazów instalacji |
Można tworzyć standardowe lub domyślne bazy danych dla farm serwerów, a następnie szybko klonować je dzięki mechanizmom wbudowanym w SQL Server 2000. |
|
|
|
|
Większa skalowalność i dostępność |
|
|
|
Element |
Opis |
Enterprise Edition |
Standard Edition |
Personal Edition |
Rozproszone widoki |
Pozwalają na rozszerzenie warstwy dostępu do danych dzięki rozłożeniu obciążenia pomiędzy kilka serwerów. By zwiększyć skalowalność, wystarczy dodać nowe serwery. |
|
|
|
Transfer logu transakcji |
Pozwala automatycznie synchronizować bazy danych z serwerami zapasowymi, bez względu na to, jak daleko są umieszczone poszczególne maszyny. |
|
|
|
Równoległe tworzenie indeksów |
W pełni wykorzystuje możliwości architektury SMP, by przyspieszyć tworzenie indeksów, co ułatwia ich generowanie na często aktualizowanych systemach. |
|
|
|
Równoległy skan tabel |
Przyspieszony, równoległy skan tabel na wieloprocesorowych systemach znacznie zwiększa ogólną wydajność serwera bazodanowego. |
|
|
|
Równoległe operacje DBCC |
Dzięki obsłudze wielu procesorów weryfikacja integralności bazy danych jest bardzo szybka. |
|
|
|
Klastry |
Instalacja elementów klastra jest możliwa bezpośrednio z poziomu programu instalacyjnego. Można wykorzystać zarówno architekturę klastra typu aktywny-pasywny, z serwerami zapasowymi typu standby, jak i w pełni aktywną, w odpowiednim środowisku sprzętowym. Baza danych może działać na dowolnym serwerze wchodzącym w skład klastra 4-węzłowego. |
|
|
|
Zarządzanie klastrami |
Reinstalacja lub odbudowa dowolnego węzła nie wpływa na funkcjonowanie innych serwerów w klastrze. Bardzo łatwo można konfigurować replikację i rozproszone widoki. |
|
|
|
Wsparcie dla 32 procesorów w architekturze SMP3 |
Baza danych SQL Server 2000 może wykorzystywać architekturę SMP aż do 32 procesorów. |
|
|
|
Wykorzystanie 64 GB RAM 4 |
Pozwala obsłużyć największe zbiory danych i transakcji dzięki wykorzystaniu do 64 GB pamięci RAM w SQL Server 2000. |
|
|
|
Wsparcie dla VI SAN |
Przyspiesza komunikację dzięki wspieraniu przez SQL Server 2000 bezpośredniej komunikacji z urządzeniami System Area .NETwork (SAN). |
|
|
|
Indeksowane widoki |
Tworzenie indeksów na widoku pozwala zwiększyć wydajność już istniejących kwerend bez powtórnego kodowania. Przyspiesza analizę i tworzenie raportów opartych na złożonych widokach. |
|
|
|
Przechowywanie wymiarów w ROLAP |
Pozwala wykonywać analizę na dużych wymiarach (10M+ elementów) dzięki specjalnemu przechowywaniu takich wymiarów. |
|
|
|
Rozproszone partycje kostek |
Dzięki wykorzystaniu Partition Wizard można zupełnie niezauważalnie podzielić jedną logiczną kostkę pomiędzy partycje na różnych serwerach. Powoduje to znaczne uelastycznienie w możliwościach przechowywania danych i zwiększanie wydajności kwerend.. |
|
|
|
Reorganizacja indeksów on-line |
Pozwala, by serwer nieprzerwanie obsługiwał użytkowników w trakcie reorganizacji indeksów. |
|
|
|
Przyrostowa kopia zapasowa |
Tworzenie kopii zapasowej przebiega bardzo szybko, dzięki temu, że zapamiętywane są tylko zmienione strony bazy danych. |
|
|
|
Kopia zapasowa typu “snapshot backup”5 |
Tworzy kopię zapasową bez realnego wpływu na wydajność serwera bazodanowego. Odtwarzanie trwa bardzo szybko. |
|
|
|
|
Zarządzanie i tworzenie oprogramowania |
|
|
|
Element |
Opis |
Enterprise Edition |
Standard Edition |
Personal Edition |
Integracja z usługami katalogowymi6 |
Pozwala na centralne zarządzanie bazami danych równolegle z innymi zasobami przedsiębiorstwa. Umożliwia przeglądanie i wyszukiwanie serwerów, źródeł replikacji czy kostek z tego samego poziomu narzędzi administracyjnych. |
|
|
|
Samozarządzanie i samostrojenie |
SQL Server 2000 wykorzystując specjalne algorytmy automatycznie dostosowujące się do dynamicznie zmieniającego się środowiska, w jakim działa serwer. |
|
|
|
Kreator kopiujący bazy danych |
Przenosi i kopiuje bazy danych wraz ze wszystkimi obiektami pomiędzy serwerami. Można okresowo wykonywać migrację za pośrednictwem DTS. |
|
|
|
SQL Query Analyzer |
Śledzenie procedur wbudowanych. Można ustawiać pułapki, definiować podgląd zmiennych czy wykonywać kod krok po kroku. Wykonywany kod może być śledzony zarówno na serwerze, jak i kliencie. Umożliwia tworzenie wzorców opartych o T-SQL. |
|
|
|
Usługi transformacji danych (DTS) |
Pozwalają importować i eksportować klucze główne i obce pomiędzy obsługiwanymi serwerami bazodanowymi. Można oprogramowywać wielofazowe ładowanie danych, a także zapisywać pakiet DTS jako kod Visual Basic. |
|
|
|
Tworzenie funkcji definiowanych przez użytkownika |
Pozwalają wielokrotnie wykorzystywać ten sam kod, tworząc odpowiednią funkcję T-SQL, co znacznie ułatwia tworzenie oprogramowania. |
|
|
|
Kaskadowo aktualizowane więzy integralności |
Określa sposób, w jaki zmiany propagowane są w bazie danych w momencie zmiany wartości klucza. |
|
|
|
Wyzwalacze INSTEAD OF i AFTER |
Pozwalają zdefiniować kod określający, co dzieje się zamiast określonej operacji albo po wykonaniu zmiany w bazie. |
|
|
|
Indeksy na wyliczonych kolumnach |
Pozwalają zdefiniować indeks nawet na takiej kolumnie, która wyliczana jest na podstawie innych kolumn tabeli. |
|
|
|
Nowe typy danych |
Można stosować nowe typy danych, jak bigint, sql_variant i table. |
|
|
|
Język i sposób sortowania przypisany jest do kolumny danych |
Sposób sortowania i zestaw znaków może być ustalony na poziomie kolumny lub całej bazy danych. |
|
|
|
Wbudowane usługi do analizy danych |
Pozwalają tworzyć kostki OLAP, hurtownie danych i rozwiązania oparte o eksplorację danych co umożliwia pełne wykorzystanie wartość jaką niosą ze sobą informacje przechowywane w bazach. |
|
|
|
Edytor wirtualnych kostek |
Pozwala graficznie przeglądać, analizować i edytować kostki wirtualne. |
|
|
|
Automatyczne budowanie MDX |
Dzięki technologii przeciągnij-i-upuść można szybko budować wyrażenia wielowymiarowe (MDX). Łatwo dodaje się funkcje, operatory arytmetyczne i wiele więcej. |
|
|
|
Wymiary |
Można wybrać najbardziej odpowiedni typ wymiaru, jak nowy “ojciec-dziecko”, zależny, zmienny czy specjalny typ wymiaru pozwalający na zapis. |
|
|
|
|
Zarządzanie i tworzenie oprogramowania (cd.) |
|
|
|
Element |
Opis |
Enterprise Edition |
Standard Edition |
Personal Edition |
Bezpieczeństwo w usługach analitycznych |
Pozwala zabezpieczyć poufne informacje definiując poziom bezpieczeństwa na poziomie wymiarów, a nawet poszczególnych komórek kostki. Rola może ograniczać dostęp do określonej kombinacji komórek. |
|
|
|
Akcje OLAP |
Pozwalają, by narzędzia analityczne automatycznie wykonywały zdefiniowane przez programistę operacje podczas przeglądania danych. |
|
|
|
Własne operacje podsumowania |
Pozwala definiować wyrafinowane operacje, określające, jak elementy składowe wpływają na obliczenie podsumowania. |
|
|
|
Wsparcie dla wielu języków w interfejsie |
W trakcie pracy narzędzi można przełączać interfejs wybierając jeden z obsługiwanych języków. |
|
|
|
“Where is Web Data Stored?” Zona Research Quiniela, Styczeń 20, 2000. Patrz: http://www.zonaresearch.com/deliverables/quinielas/indexes/2000/jan00.htm
Tylko w Microsoft® Windows® 2000 Advanced Server i Microsoft® Windows® 2000 DataCenter Server.
“Where is Web Data Stored?” Zona Research Quiniela, Styczeń 20, 2000. Patrz: http://www.zonaresearch.com/deliverables/quinielas/indexes/2000/jan00.htm
barnesandnoble.com, działające na SQL Server, osiągnęło najwyższy średni współczynnik dostępności (98.55%) spośród mierzonych witryn e-commerce. Pomiar był wykonywany w czasie gorączkowych przedwakacyjnych zakupów, zgodnie z Keynote Systems (co opisano w PC Week Online, 3 grudnia, 1999).
Badania Aberdeen Group pokazały, że SQL Server 7.0 oferuje rzeczywiste rozwiązania z 3.7 razy niższymi kosztami posiadania (TCO) niż główny konkurent (patrz: http://www.microsoft.com/sql/productinfo/Aberdeen.htm). Badania American Institutes for Research pokazały, że SQL Server 7.0 można trzykrotnie łatwiej wykorzystać niż głównego konkurenta (patrz: http://microsoft.com/presspass/features/1999/09-29compass2.htm).
Aby uniknąć zalewu indeksu pełnotekstowego spójnikami typu a, and, the, tego typu słowa są ignorowane. Lista ignorowanych słów w SQL Server 2000 zależy od wybranego języka. Można ją także modyfikować.
Opis IFilter można znaleźć pod http://msdn.microsoft.com/library/
Mechanizm automatycznego synchronizowania zmian nie jest transakcyjny i występuje minimalne opóźnienie pomiędzy wprowadzeniem zmiany a odzwierciedleniem jej w indeksie pełnotekstowym.
Korzystanie z mechanizmu śledzenia zmian jest zalecane, nawet w sytuacjach gdy zmianie ulega niemal 100% indeksów pełnotekstowych.
W SQL Server 2000, jest to możliwe na widoku opartym na jednej tabeli.
Teri Palanca z Giga Information Group: “[Zapytania konstruowane przy użyciu języka angielskiego] nie są oferowane przez innych producentów razem z ich serwerami. [Microsoft jest jedyną firmą, ] wspierającą pytania zadawane w sposób naturalny dla języka angielskiego; inni używają SQL.” Opublikowane w PCWeek online, “SQL Server Learns English, 20/3/2000”.
Poprzednia implementacja English Query wykorzystywała tylko ODBC.
“Where is Web Data Stored?” Zona Research Quiniela, Styczeń 20, 2000. Patrz: http://www.zonaresearch.com/deliverables/quinielas/indexes/2000/jan00.htm
1 Nie jest to w pełni wyczerpująca lista nowych możliwości. Proszę przejrzeć dokumentację SQL Server 2000 (Books Online) by uzyskać dokładne informacje o nowych i rozszerzonych elementach w SQL Server 2000.
2 Datagramy aktualizujące XML oraz grupowe ładowanie danych za pośrednictwem XML będzie dostępne na stronie domowej Microsoft SQL Server (http://www.microsoft.com/sql) jako wersja Web, po udostępnieniu pierwszej wersji SQL Server 2000.
3 Wymaga serwera Windows 2000 DataCenter Server.
4 Wymaga serwera Windows 2000 DataCenter Server.
5 Wymaga narzędzi firm trzecich obsługujących aplikacje z interfejsem Virtual Device Interface (VDI) a także zaawansowanego systemu przechowywania danych wspierający mirroring lub kopiowanie w trakcie zapisu (copy-on-write).
6 Usługi katalogowe wbudowane są w serwery z rodziny Windows 2000 Server.
8 Przewodnik po Microsoft SQL Server 2000
Przewodnik po Microsoft SQL Server 2000 7