
Zoals ik vorige week al berichte, zit ik deze week, samen met Erma, in Redmond bij de SQL Server 2008 Jump Start. Hoewel we dachten uitgenodigd te zijn voor een Train-the-Trainer event, blijkt het een veel algemenere sessie te zijn waar vooral interne Microsoft medewerkers van over de hele wereld bij zijn, maar ook allerlei partners, waaronder trainers, maar ook sales mensen. Deze eerste dag was een overview dag; hierna beginnen de verschillende tracks waarbij ik de BI track ga volgen, Erma de development track. De dag begon met een keynote door Ted Kummert, corporate vice president van de Data Storage and Platform divisie bij Microsoft. Ted ging in op de historie en de toekomst van SQL Server en in hoog tempo kregen we al wat demo's te zien van wat SQL Server 2008 ons gaat bieden. Belangrijkste boodschap: SQL Server is niet langer een database, maar een data platform voor het ontwikkelen van applicaties.
Na de keynote trakteerden Roger Doherty en Zach Owens ons op een overvloed aan functionaliteit die SQL Server 2008 ons gaat bieden om te kunnen fungeren als data platform voor het nieuwe software + services concept van Microsoft. Hierbij werden de nieuwe features genoemd als rich storage (zoals filestream storage waarbij data op het filesysteem wordt opgeslagen maar wel beheerd wordt door SQL Server en de opslag van spatial data), data protection (transparante encryptie van data, incl. backups) en auditing (het kunnen loggen van alles wat er op een database gebeurt, desgewenst ook alle select statements die worden uitgevoerd). Tijdens deze presentatie werd een leuke demo gegeven van een applicatie gebouwd op SQL Server 2008 voor het organiseren van een wielerevenement waarbij de te rijden route mbv. spatial data opgeslagen en bewerkt kon worden en waarbij je aan die route op gegeven locaties filmbeelden toe kon voegen (filestream data). Ook werd deze demo gebruikt om het Synchronization Framework te demonstreren waarbij je een database offline kunt halen naar een compact edition op je desktop waarin je bijvoorbeeld tijdens het event deelnemers kunt registreren. Zodra je weer online bent, kunnen alle wijzigingen weer gesynchroniseerd worden met de 'grote' database.
Hierna volgde een sessie over het ontwikkelen van mission critical systemen op SQL Server 2008. Ondersteuning hiervoor vind je terug in drie pijlers: security, availability en scalability. SS 2008 is nog beter beveiligd dan SS 2005 (en zoals vaker vandaag, werd hier even flink uitgehaald naar de concurrentie; in een periode waarin in SQL Server geen enkel security probleem is opgetreden, hadden Oracle en IBM last van wel 100 incidenten). Daarnaast biedt SS 2008, in de vorm van transparante (je hoeft in applicaties niets aan te passen) data encryptie en de mogelijkheid iedere actie op een database te auditen, nieuwe functionaliteit op het gebied van security. Ook maakt het nieuwe Policy Management Framework het veel eenvoudiger de policies voor je hele bedrijf vast te leggen en eenvoudig door te voeren op alle servers in je netwerk. Op het gebied van availability is er vooral onder de motorkap het eea. verbeterd, zoals ondersteuning voor hot pluggable CPU's en memory op bepaalde hardware. Grappig vond ik de mogelijkheid tot het comprimeren van backups wat leidt tot het sneller maken van een backup of het restoren ervan. Een demo hiervan liet zien dat de totale tijd om de backup te maken of te restoren terug loopt terwijl de CPU tijd toeneemt. Verklaring: bij compressie is er minder disk I/O. Op het gebied van scalability werden nieuwe features als data compressie genoemd (ook hier, net als bij het comprimeren van backups, een performance verbetering door minder disk I/O) en de resource governor. De laatste werd met een erg leuke demo, die ik later deze week nog eens op de kop moet zien te tikken, gepresenteerd.
Na de lunch was het tijd voor een presentatie over Manageability. Hierbij werd vooral het nieuwe Manage by Policies concept toegelicht. Policies kun je gebruiken om bepaalde standaarden af te dwingen, bijv. iedere stored procedure die iemand maakt moet de prefix 'usp_' hebben. Maar je kunt ze ook gebruiken om te checken of op iedere server in je netwerk bepaalde eigenschappen juist geconfigureerd zijn. Is dat niet het geval, dan kun je met een simpele druk op de knop die policy opleggen op één of meer servers. Microsoft heeft een groot aantal best practices als standaard policies opgenomen zodat het heel eenvoudig wordt bepaalde best practices te volgen. Overigens wordt de hele user interface rond het definiëren en opleggen van policies in de binnenkort te verschijnen CTP6 (de feature complete CTP) aanzienlijk verbeterd. Een andere feature die onder manageability valt is het stuk in SSMS wat eerder werd aangeduid met Performance Studio. Om te voorkomen dat je denkt dat dit een nieuw tool is ipv. functionaliteit in SSMS, hebben ze deze naam laten vervallen. Maar de functionaliteit is wel gebleven. In een soort monitoring datawarehouse worden allerlei gegevens verzameld waarop je met standaard rapporten kunt rapporteren. Zowel de data die verzameld wordt als de rapporten daarop, zijn volledig te customizen.
Daarna was het de beurt aan Donald Farmer met een presentatie over Business Intelligence in SS 2008. Hij ging oa. in op de verbeteringen in de ETL hoek zoals de nieuwe data profiling control flow task en Change Data Capture (eigenlijk een feature in de RDBMS, maar zeer bruikbaar in je ETL processen). Ook is in SSIS de hele pijplijn engine sterk verbeterd en werken de lookup transformaties veel efficiënter. Reporting Services is onder de motorkap sterk aangepast. Zo is het niet langer een vereiste dat IIS op dezelfde server draait en gebeurt het renderen van grote rapporten veel efficiënter. De Analysis Services designer is enorm verbeterd waardoor je als ontwikkelaar veel beter geholpen wordt een database te bouwen met een goede performance, net zoals Word je met de automatische spellingcontrole al tijdens het typen van een brief helpt fouten te voorkomen. Andere verbeteringen zijn een veel betere controle over wat er gebeurt in de SSAS engine, het renderen van rapporten in Office, een totaal nieuwe Report Builder (die ook zonder Report Model kan werken), de Dundas charts in Reporting Services en nieuwe data mining add-ins voor Excel. Helaas gingen de demo's van Donald allemaal fout…
De laatste sessie van vandaag ging over Next-Generation Data Applications. Ook hier weer de nadruk op de evolutie van SQL Server van database naar data platform waarop je applicaties kunt bouwen. Verder erg veel herhaling in deze sessie, zoals weer het belang van het kunnen opslaan van spatial data in de database. Maar wel een coole demo van een applicatie waarin getoond werd wat SQL Server nu precies voor zijn rekening neemt bij het werken met spatial data. Hoe je de spatial functionaliteit kunt gebruiken om allerlei geometrische figuren te tekenen, afstanden te bepalen tussen punten, lijnen, vormen, intersecties bepalen, etc. Ook werd in deze sessie even stilgestaan bij alle T-SQL enhancements in SS 2008 zoals de nieuwe datatypen voor datums en tijd (voor het eerst vandaag applaus uit de zaal), het MERGE statement en het HierarchyID data type. Ook werd (opnieuw) aandacht besteed aan het ADO.NET Entity Framework waardoor ontwikkelaars tegen een conceptueel model kunnen programmeren zonder zich druk te hoeven maken over de fysieke implementatie daarvan in de database. In het verlengde daarvan werd ook gesproken over LINQ (Language Integrated Queries, waarmee programmeurs geen 'gewone' SQL queries hoeven te schrijven maar op een voor hun veel natuurlijke, object geörienteerde manier data benaderen) en de ADO.NET Data Services.
Eerder heb ik wel eens gezegd dat SQL Server 2008 geen major release is. Daarmee bedoelde ik dat de overgang van 2005 naar 2008 veel kleiner is dan die van 2000 naar 2005. Microsoft positioneert 2008 wel degelijk als een major release. Voor een deel natuurlijk marketing, maar ik moet zeggen dat ik na zo'n overview dag toch wel héél veel nieuws zie. Feit is wel dat Microsoft zijn uiterste best doet de migratie van 2005 naar 2008 zo eenvoudig en pijnloos mogelijk te maken. Het zou zo moeten zijn dat je een upgrade uit moet kunnen voeren zonder verdere migratie perikelen. Het zou wel jammer zijn je dan niet te verdiepen in alles wat nieuw is, want dan mis je heel veel!