SQL Server 2005 wordt wat Microsoft betreft de allerbeste databaseserver voor Windows-netwerken. De bekeken bètaversie ziet er in ieder geval veelbelovend uit.
Vroeger gebruikten alleen grote bedrijven een relationele databaseserver. Tegenwoordig treffen we die ook in kleinere firma’s aan. Dynamische websites bijvoorbeeld worden steeds populairder. Om die te bouwen is een relationele databaseserver nodig. Voor websites die met de scripttaal PHP gebouwd zijn, is MySQL populair (en gratis), maar als je Microsoft-gecentreerd werkt en je een dynamische website met asp of binnen .NET wilt hebben, heb je SQL Server nodig. Overigens leidde een Amerikaans onderzoek eerder dit jaar tot de conclusie dat van de (Amerikaanse) midden- en kleinbedrijven die een databaseserver hebben draaien 73,7 procent voor Microsoft SQL Server gekozen heeft. Microsoft Access was tweede met 63,1 procent, Oracle derde met 58,5 procent, MySQL vierde met 38,8 procent en IBM DB2 vijfde met 30,9 procent. Ook in Nederland heeft Microsoft met SQL Server een stevige voet aan de grond.
Doelgroepen
Microsoft biedt met SQL Server 2005 edities die zich op diverse doelgroepen richten en afhankelijk van de gekozen doelgroep ook verschillende mogelijkheden bieden op het gebied van verwerking en schaal. De vroegere DBE ofwel desktopeditie, een databaseservertje met zware beperkingen, vervalt. Daarvoor is SQL Server 2005 Express in de plaats gekomen. Die versie is gratis en heeft minder zware beperkingen dan zijn voorganger. De database mag nu 4 GB groot zijn, en hoewel hij maar 1 GB ram en één cpu kan gebruiken, is er geen directe beperking aan het aantal gebruikers. In de praktijk zal deze Express-editie het meest gebruikt worden voor kleinere dynamische websites en databases die met bepaalde applicaties meegeleverd worden.
De overige edities (werkgroep, standaard en enterprise) zijn bedoeld voor het zwaardere werk. De hogere edities ondersteunen meer werkgeheugen, processoren en gebruikers. De Enterprise-editie is de zwaarste uitvoering, die geen beperkingen kent. Het werkgeheugen en het aantal processoren worden alleen beperkt door de gebruikte hardware. Er is ook geen beperking aan de schaalbaarheid of het aantal databasepartities. Vanaf de standaardeditie is databasespiegeling beloofd, maar die is op dit moment nog niet gereed. Microsoft heeft al laten weten dat de eerste vrijgave van SQL Server 2005 mogelijk geen spiegeling aan boord heeft. Dat wordt nu verwacht in 2006.
Microsoft gaat er terecht van uit dat een databaseserver niet alleen functioneert. Databases werken nauw samen met allerlei applicaties. De leverancier heeft een eigen omgeving ontwikkeld, waarin applicaties kunnen samenwerken en onderling communiceren: .NET. Daar bestaan speciale ontwikkeltools voor. Het is dan ook niet verwonderlijk dat SQL Server 2005 voorzien is van allerlei uitbreidingen om zich naadloos in een .NET-omgeving te kunnen integreren. Voor het beheer is er SQL Server Management Studio. Voor het ontwikkelen van nieuwe applicaties gebruiken we Visual Studio 2005.
Diensten
SQL Server 2005 wordt gebruikt vanuit Microsoft Office, SharePoint Portal Server 2005 of applicaties van derden. Ontwikkelen gebeurt met Visual Studio 2005. Microsoft stelt als beheertools ter beschikking: integratiediensten, analysediensten (olap ofwel online analytical processing en datamining), rapportage-, notificatie-, en replicatiediensten, en de eigenlijke relationele database-engine.
De integratiediensten omvatten alles wat nodig is voor ‘datawarehousing’ en de integratie van verspreide bedrijfsgegevens.
Analysediensten zorgen voor het realtime analytisch verwerken via olap van grote en complexe datasets met gebruik van meerdimensionale opslagmethodes.
De rapportagediensten staan in voor het aanmaken, beheren en afleveren van zowel traditionele papiergebaseerde als interactieve webgebaseerde rapporten.
De replicatiediensten dienen niet alleen voor applicaties die data gedistribueerd of mobiel verwerken, maar ook voor het verzekeren van hoge betrouwbaarheid en beschikbaarheid, het schaalbaar en gelijktijdig gebruik van secundaire opslagruimtes voor bedrijfsrapportagedoeleinden, en de integratie met heterogene systemen, waaronder bestaande Oracle-databases.
De notificatiediensten worden gebruikt voor het ontwikkelen en ontplooien van schaalbare applicaties die gepersonaliseerde en tijdige actualisering van informatie kunnen leveren aan een reeks voortdurend verbonden en mobiele apparaten.
Geïntegreerde beheerconsole
Nieuw bij SQL Server 2005 is de SQL Server Management Studio. Dat is één geïntegreerde beheerconsole waarmee je al je databases en alle bijbehorende diensten centraal kunt beheren over alle geïnstalleerde SQL Servers heen. Er is overigens een nauwe integratie tussen de bij SQL Server 2005 meegeleverde beheertools en andere Microsoft-beheermiddelen, zoals MOM (Microsoft Operations Manager) en SMS (Systems Management Server). Het softwarebedrijf levert ook standaard datatoegangsprotocollen. Daarmee is de tijd die nodig is om data van bestaande systemen in SQL Server te integreren drastisch te verminderen. Verder biedt SQL Server een eigen webdienst om samenwerking met niet-ondersteunde applicaties en -platformen toch mogelijk te maken.
SQL Server Management Studio laat databasebeheerders meerdere taken tegelijk uitvoeren, zoals een zoekopdracht aanmaken en uitvoeren, serverobjecten bekijken en beheren, systeemactiviteit bewaken en onlinehulp bekijken. Er is een
Productinfo Product: SQL Server 2005, http://www.microsoft.com/sql/2005 Producent: Microsoft, Schiphol-Rijk, tel. +31 20 500 1500, http://www.microsoft.nl Leverancier: Microsoft-dealers (bel of surf naar Microsoft voor een lijst) Adviesprijs (exclusief btw): gratis (Express editie); 739 dollar (werkgroep-editie, server plus vijf gebruikers) of 3900 dollar per processor; 2799 dollar (Standard-editie, server plus tien gebruikers) of 6000 dollar per processor; 13.500 dollar (Enterprise-editie, server plus 25 gebruikers) of 25.000 dollar per processor Systeemvereisten: Windows 2000 Server of Advanced Server SP4+, of 32-bit of 64-bit Windows 2003 SP1 (het serverniveau is afhankelijk van gewenste SQL-servereditie) |
Verrassend eenvoudig
Bij SQL Server 2005 levert Microsoft tools voor data-etl (extraheren, transformeren, laden), datamining, olap en rapportage. Die tools worden allemaal geïntegreerd binnen Visual Studio 2005. Elk belangrijk subsysteem van SQL Server heeft zijn eigen objectmodel en api-verzameling (application program interface) om het gegevenssysteem uit te breiden in elke denkbare richting. De SQL-taal (Transact-SQL) is zelf ook uitgebreid, soms met verrassend eenvoudige, erg bruikbare dingen. We kunnen niet alles vermelden, maar een mooi voorbeeld is de ‘output’-clausule in de datamanipulatieopdrachten. Als je vroeger een boel records veranderde of wiste en je een lijst van alle wijzigingen wilde, moest je daarvoor een nieuwe databaseondervraging draaien. Met behulp van de ‘output’-clausule kun je die lijst voortaan binnen de bijwerkingsopdracht laten genereren en is dus geen extra ondervraging meer nodig. (Voor een volledigere lijst van de nieuwigheden in Transact-SQL zie: http://msdn2.microsoft.com/en-us/library/ms242482.)
SQL Server 2005 ondersteunt nu ook zelf XML. SQL Server 2000 kon al werken met XML, maar deed daar zelf niets mee. Bij SQL Server 2005 heeft de leverancier een nieuw XML-datatype toegevoegd, samen met een waslijst XML-specifieke functies, onder meer voor validaties. Overigens is bij SQL Server 2005 ondersteuning voor CLR (Common Language Runtime) in de kern ingebouwd. Daardoor ben je niet langer verplicht om met één specifieke taal, zoals Transact-SQL, te werken voor een bepaalde applicatie binnen .NET.
Prestaties
In principe meten wij als testlab geen prestaties van bètasoftware omdat dat een echt eerlijke vergelijking uitsluit en omdat bètasoftware vaak nog vertragende debugroutines en dergelijke aan boord heeft. TPC (Transaction-processing Performance Council, http://www.tpc.org) heeft wel benchmarks georganiseerd. Die blijken bijzonder goed uit te vallen voor SQL Server 2005. Momenteel staat het zelfs op de eerste plaats in een TPC-C benchmark die is uitgevoerd op een Dell PowerEdge 2800. De benchmark werd uitgevoerd in een client-serverconfiguratie met één PowerEdge SC1420-pc als client. Op de server draaide Windows Server 2003 Standard x64 Edition met SQL Server 2005 Standard x64 Edition. Op de client liep Windows Server 2003 Standard Edition. Het aantal gemeten transacties per seconde voor de TPC-C benchmark (tpmC) was 38.622. De totale systeemkosten bedroegen 38.028 dollar, waardoor de prijs per tpmC-transactie (dollar per tpmC) 0,99 dollar is. SQL Server 2005 zet daarmee in deze benchmark de tot dusver beste gemeten score neer. De volledige top-10 is te zien op http://www.tpc.org/tpcc/results/tpcc_price_perf_results.asp. Bij de TCP-H-benchmark doet SQL Server 2005 het niet zo goed en laat hij zich alleen bij de 1 TB-resultaten als winnaar optekenen (zie: http://www.tpc.org/tpch/results/tpch_price_perf_results.asp).
Conclusie
Microsoft brengt met SQL Server 2005 een betere integratie binnen .NET, beter en gecentraliseerder beheer, en nieuwe en betere ondersteuning voor XML-gegevens. Voor wie nu al SQL Server gebruikt, is de 2005-versie het overwegen waard. De leverancier wil ook gebruikers van concurrenten als Oracle en IBM DB2 overhalen naar SQL Server 2005. We moeten afwachten of dat lukt. De verregaande integratie binnen .NET is, zoals te verwachten valt, met databaseservers van derden in elk geval niet mogelijk.
Johan Zwiekhorst, Data TestLab