Microsoft: Yukon
Veröffentlicht am: 26.01.2004 12:07:21

Datenbank-Features für Entwickler Yukon ist der Codename für die langerwartete neue Version des Microsoft SQL Servers, in die Microsoft viel Zeit und Geld investiert hat. Mit Yukon und der kommenden Visual Studio Version mit dem Codenamen „Whidbey“ ändert sich einiges für Entwickler, die auch auf Datenbanken zugreifen wollen/müssen.

So kann der Code nun dort „platziert“ werden, wo er von seiner Funktionalität hingehört, die Daten könne in den verschiedensten Formate, hier sticht XML sicherlich am prominentesten heraus, abgelegt und gerufen werden und die Integration der Datenquellen in die Entwicklungsumgebung ist noch enger geworden.

.NET
Nachdem die CLR (Common Language Runtime) in die Beta 1 des SQL Servers „Yukon“ integriert wurde, kann man innerhalb der Datenbank die Funktionalität der .NET Basisklassen nutzen. So können Datenbankentwickler Stored Procedures, Funktionen und Trigger in der .NET Programmiersprache ihrer Wahl implementieren - bevorzugt natürlich C# und VB.NET. Damit lässt sich die Datenbank sehr schnell und einfach erweitern - auch um Funktionalitäten die bisher mit T-SQL (Transactional SQL) nicht möglich waren. Auf der Basis des .NET Frameworks lassen sich String-Verarbeitung, Datums-Operationen oder das Aggregieren von XML-Daten aus WebServices recht einfach realisieren. Der Manged Code, der hier zum Einsatz kommt, unterliegt natürlich der Code Access Security, sodass die CLR gewährleistet, dass der Code das Betriebssystem oder den Datenbankserver nicht kompromittieren kann - etwa durch Buffer-Overflows.

Damit will Microsoft T-SQL aber sicherlich nicht abschaffen. T-SQL hat noch immer seine Berechtigung, wenn es vor allem um Daten-orientierte Aktionen geht. Wenn allerdings eine gewisse Business-Logik gefragt ist, empfiehlt Microsoft den Einsatz des .NET Frameworks. Ob man den Code nun nahe den Daten, also innerhalb von Stored Procedures, etc. platziert, oder doch eher auf dem Client, damit die CPUs des Servers nicht zu sehr beansprucht werden, bleibt schlussendlich dem Entwickler überlassen, Yukon unterstützt beide Methoden.

Web Services
Der neue SQL Server Yukon ist auch dafür ausgelegt, schnell und einfach in einer Web Service orientierten Welt eingesetzt zu werden. Er benötigt keine Middleware wie den Internet Information Server, um mit Web Services zu sprechen. Vielmehr kann er eigenständig als HTTP-Listener agieren, um Anfragen entgegen zu nehmen. Yukon stellt selbstständig über ein Web Service eine Schnittstelle zur Verfügung, über die man SQL-Statements absetzten und Funktionen und Prozeduren aufrufen kann. Die Ergebnisse werden als XML zurückgeliefert und können so in Excel, Word, Visual Studio und anderen Applikationen verwendet werden.

ADO.NET
Auch in ADO.NET hat sich einiges getan. So finden sich in der Microsoft SQL Server "Yukon" Beta 1 „Managed SQL types“, die man in VB-NET oder C# verwenden kann. Im Gegensatz zu den klassischen Datentypen, verfügen die SQL Datentypen über eine Semantik, die jener der nativen SQL Typen ähnlich ist. So kann der SqlString Datentype zum Beispiel erkennen, ob der gespeichterte Wert ein „NULL“-Wert ist, was mit dem normalen CLR Datentyp nicht möglich ist.
In Yukon findet sich nun erstmals auch die Unterstützung von Server-Curors. Über das ISqlResultSet kann man den Cursor auf eine bestimmte Zeile im Ergebnisset einer Abfrage positionieren, einzelne Zeile oder ganze Blöcke aus der Datenbank auslesen und auch innerhalb der Ergebnisse einer Abfrage gleich Änderungen durchführen.
Ebenfalls neu sind die Benachrichtigungen. Mit jeder Query, die über die verschiedenen APIs wie ADO.NET, OLEDB, ODBC, ADO oder SOAP abgesetzt werden kann, lässt sich auch ein Parameter mitschicken, dass man informiert werden will, wenn sich das Ergebnis der Abfrage geändert hat. So lässt sich zum Beispiel recht einfach ein Caching-Mechanismus für dynamisch generierte Webseiten erstellen. Die Benachrichtigungen werden über einen SQL Service Broker mittels einer Queue den Applikationen zur Verfügung gestellt. SQL Server Management Objects (SMO) Ebenfalls neu eingeführt wurden die SQL Server Management Objects (SMO), ein Management Objektmodell für Yukon. Basierend auf dem .NET Framework sollen diese die neue Basis für die Entwicklung von Database-Management-Appliaktionen werden. So basiert bereits die SQL Server Workbench auf SMO und alle Operationen, die im GUI möglich sind, können auch über die SMO-APIs durchgeführt werden.

XML
XML hat sich mittlerweile als das universielle Format für den Datenaustausch etabliert - auch bei Microsoft. Bereits der SQL Server 2000 hat XML „unterstützt“, indem er via SQLXML erlaubt hat, XML-Daten in relationale Tabellen und vice versa zu konvertieren. Mit Yukon hat Microsoft den SQL Server um eine ganze Palette an Funktionen und XML-bezogenen Fähigkeiten erweitert. So wurde der native XML Datentyp eingeführt, der über seine Methoden und Funktionen fast alle Eigenschaften der XQuery-Spezifikation erfüllt. Im Gegensatz zu einem normalen String-Feld kann man aus einem XML-Feld auch einfach Teile der XML-Daten extrahieren, das XML-Dokument gegen ein Schema validieren und sogar in-place ändern, ohne dass das ganze Feld erst ausgelesen und dann wieder geschrieben werden muss.
Für Suchen in XML-Daten unterstützt Yukon nun auch den von der W3C verwalteten Standard XQuery in der Version „XQuery 1.0 Working Drafts of the range from December 20, 2001 to November 15, 2002“. In guter alter Microsoft-Manier wurde dieser Standard unter dem Namen „DML Erweiterungen“ (Data Modification Language) um Funktionen für das Ändern von Daten erweitert, da diese im Standard, der nur die Abfrage/Suche vorsieht, nicht geplant waren.

Fazit
Die Änderungen in Yukon allen für Entwickler sind gewaltig und dieser Artikel konnte natürlich nur die wichtigsten Neuerungen streifen, aber man sieht, dass sie Microsoft viel überlegt hat, wie man den neuen Server sinnvoll erweitern kann. Mehr zum kommenden Microsoft SQL Server Yukon lesen sie dann in der kommenden Ausgabe, wenn unser Chefredaktuer von Microsofts IT-Forum zurückgekehrt ist.

Yukon Basics; Yukon Product Info


WinFS

Yukon

Indigo

Dies ist der Name des neuen Storage-Systems für Windows Longhorn, das über die normale Dokument-orientierte Betrachtungsweise eines Filesystems hinausgeht. Durch die Integration von Datenbanktechnologien kann man nun auf verschiedenste Weise Informationen suchen, anzeigen und bearbeiten. Durch XML-Schemas ist es leicht erweiterbar und bietet so nette Features wie eine gemeinsame Kontakt-Datenbank für alle Applikationen und „Agenten“ kümmern sich darum, dass die Benutzer nicht mit Informationen überflutet werden. Yukon ist der Codename für die langerwartete neue Version des Microsoft SQL Servers, in die Microsoft viel Zeit und Geld investiert hat. Mit Yukon und der kommenden Visual Studio Version mit dem Codenamen „Whidbey“ ändert sich einiges für Entwickler, die auch auf Datenbanken zugreifen wollen/müssen. Indigo ist die Basis für die Kommunikation unter Longhorn. Egal ob zwischen Applikationen, zwischen PCs oder zwischen PC und WebService – die Kommunikation erfolgt über Indigo. So kann man über Indigo Daten eines WebServices abrufen oder an ein solches schicken, aber auch Transaktionen durchführen. Gezeigt wurden aber auch Beispiele, wie man aus einer Applikation heraus Daten im Sidebar anzeigen kann oder einen „Videostream“ des eigenen Dekstops an einen anderen PC senden kann. Aber auch Instant Messaging oder Datenaustausch über ein Peer-to-Peer Netzwerk wird in Longhorn über Indigo abgewickelt.

Avalon

Whidbey

.NET

Avalon ist der Name für die GUI-Klassen bzw. das GUI-Framework für das neue Betriebssystem. Neben vielen neuen Controls ist vor allem das Compositing - also das einfache überlagern von mehreren Elementen zu einem neuen - eines der herausragensten Merkmale in Avalon. Hinzu kommt, dass die Oberflächen mit XAML, einer XML-basierten Auszeichnungssprache, definiert werden, was völlig neue Möglichkeiten eröffnet. Hinzu kommt noch der One-Klick-Install, der auch schon mit der nächsten Visual Studio Version kommen soll, mit dem sich Applikationen ganz einfach von einer Webseiten installieren lassen sollen. Die Verbesserungen in Whidbey, der Entwicklungsumgebung Visual Studio, sind vielfältig. Bereits lange vor Longhorn wird Whidbey die Technologien und Tools zur Verfügung stellen, dass Entwickler ihre bestehenden oder geplanten Applikationen auf die kommende Windows-Version und die damit verbundenen Änderungen (WinFX) anpassen können.
Neben technischen Features wie „partial types“, C++ with CLR types und anderen Verbesserungen die Hardcore-Programmierer erfreuen werden, legt Whidbey vor allem auch auf die Verbesserung für den „Gelegenheitsprogrammierer“ bzw. auf Verbesserungen, welche die Produktivität der Entwickler verbessern, wert.
Bill Gates, seines Zeichens reichster Mann der Welt und bald auch Knight Commander of the British Empire, begrüßt morgen, am 28.1.2004 rund 1.500 Entwickler zum Microsoft .NET DAY.
Dieses IT-Ereignis, man kann es durchaus so nennen, findet im Austria Center Vienna statt und gilt als Wegweiser im Software-Bereich, zumindest wenn man sich in der Fensterwelt bewegt.
Bill Gates wird freilich auch Longhorn, den Windows XP-Nachfolger ansprechen. WCM berichtete schon ausführlich über die Kernkomponenten Avalon, Indigo und WinFS, nun werden wir hoffentlich noch ein paar Neuigkeiten erfahren, außer dass es viel verändern und alles besser wird…


Martin Leyrer


Gedruckt von WCM (http://www.wcm.at/contentteller.php/news_story/microsoft_yukon.html)