Neue Funktionen von SQL Server 2005 Enterprise Data Management In der heutigen vernetzten Welt müssen Daten und die Systeme, die diese Daten verwalten, stets sicher und dennoch für Benutzer verfügbar sein. Mit SQL Server 2005 profitieren Benutzer und IT-Spezialisten in Ihrem Unternehmen von verringerten Ausfallzeiten der Anwendungen, erhöhter Skalierbarkeit und Leistung sowie strengen und gleichzeitig flexiblen Sicherheitskontrollen. SQL Server 2005 enthält außerdem viele neue und verbesserte Funktionen, mit denen Ihr IT-Personal produktiver arbeiten kann. SQL Server 2005 bietet wichtige Verbesserungen der Unternehmensdatenverwaltung in den folgenden Bereichen: • • • • Verwaltbarkeit Verfügbarkeit Skalierbarkeit Sicherheit Verwaltbarkeit SQL Server 2005 vereinfacht die Bereitstellung, Verwaltung und Optimierung von Daten- und Analytiseanwendungen. Als Plattform für Unternehmensdatenverwaltung wird eine einzige Verwaltungskonsole bereitgestellt, mit der Datenadministratoren von überall in Ihrer Organisation alle Datenbanken und zugehörigen Dienste Ihres Unternehmens überwachen, verwalten und optimieren können. Die Verwaltungsinfrastruktur ist erweiterbar und kann leicht mithilfe von SQL Management Objects programmiert werden. Benutzer können somit ihre Verwaltungsumgebung anpassen und erweitern und unabhängige Softwareanbieter können zusätzliche Tools und Funktionen erstellen, um die bereits vorhandenen Möglichkeiten weiter zu optimieren. SQL Server Management Studio SQL Server 2005 vereinfacht die Überwachung und Verwaltung der relationalen SQL Server-Datenbank durch eine integrierte Verwaltungskonsole sowie durch Integration Services, Analysis Services, Reporting Services, Notification Services und SQL Server Mobile Edition über eine große Anzahl verteilter Server und Datenbanken hinweg. Datenbankadministratoren können mehrere Aufgaben gleichzeitig durchführen. Dazu zählen: Erstellen und Ausführen einer Abfrage, Anzeigen von Serverobjekten, Verwalten eines Objekts, Überwachen der Systemaktivität und Anzeigen der Onlinehilfe. SQL Server Management Studio enthält eine Entwicklungsumgebung zum Erstellen, Bearbeiten und Verwalten von Skripten und gespeicherten Prozeduren unter Verwendung von Transact-SQL, multidimensionalen Ausdrücken, XML for Analysis und SQL Server Mobile Edition. Management Studio ist in die Quellcodeverwaltung fertig integriert. Management Studio enthält außerdem Tools zum Planen von SQL Server Agent-Aufträgen und zum Verwalten von Wartungsplänen zur Automatisierung von täglichen Wartungs- und Betriebsaufgaben. Die Integration der Verwaltung und Erstellung in einem einzigen Tool gekoppelt mit der Möglichkeit, alle Arten von Servern zu verwalten, führt zu erhöhter Produktivität für Datenbankadministratoren. SQL Server 2005 enthält mehr als 70 neue Messfunktionen für die interne Datenbankleistung und Ressourcenverwendung, vom Arbeitsspeicher über die Sperrung und Planung von Transaktionen bis hin zu Ein- und Ausgaben bei Netzwerk und Datenträgern. Diese dynamischen Verwaltungsansichten (DMV – Dynamic Management View) bieten größere Transparenz und bessere Einblicke in die Datenbank sowie eine leistungsstarke Infrastruktur für die proaktive Überwachung des Datenbankzustands und der Datenbankleistung. SQL Management Objects SQL Management Objects (SMO) ist ein neuer Satz von Programmierobjekten, die alle Verwaltungsfunktionen der SQL Server-Datenbank zur Verfügung stellen. Selbst Management Studio wurde mit SQL Management Objects erzeugt. SMO ist als Microsoft .NET Framework-Assembly implementiert. Mit SMO können allgemeine administrative Aufgaben von SQL Server automatisiert werden, wie z. B. das programmgesteurte Abrufen von Konfigurationseinstellungen, das Erstellen neuer Datenbanken, das Anwenden von Transact-SQL-Skripten, das Erstellen von SQL Server Agent-Aufträgen und das Planen von Sicherungen. Das SMO-Objektmodell ist ein Ersatz für Distributed Management Objects (DMO), das in früheren Versionen von SQL Server enthalten war und mehr Sicherheit, Zuverlässigkeit und Skalierbarkeit bietet. Verfügbarkeit Durch Investitionen in Hochverfügbarkeitstechnologien, zusätzliche Funktionen für Sicherung und Wiederherstellung sowie Replikationsverbesserungen können Unternehmen Anwendungen mit hoher Verfügbarkeit erstellen und bereitstellen. Innovative Hochverfügbarkeitsfeatures, wie z. B. Datenbankspiegelung, Failoverclustering, Datenbanksnapshots und verbesserte Onlineoperationen, minimieren die Ausfallzeit und helfen dabei, den konstanten Zugriff auf wichtige Unternehmenssysteme sicherzustellen. Diese Verbesserungen werden in diesem Abschnitt ausführlicher beschrieben. Datenbankspiegelung Mithilfe von Datenbankspiegelung1 wird ein kontinuierliches Streaming des Transaktionsprotokolls von einem Quellserver auf einen einzelnen Zielserver ermöglicht. Bei einem Fehler des primären Systems können Anwendungen sofort erneut mit der Datenbank auf dem sekundären Server verbunden werden. Die sekundäre Instanz erkennt Fehler auf dem primären Server innerhalb von Sekunden und akzeptiert Verbindungen zur Datenbank sofort. Datenbankspiegelung funktioniert auf Standardserverhardware und erfordert keine speziellen Speicher oder Controller. Abbildung 1 zeigt die Basiskonfiguration der Datenbankspiegelung. Abbildung 1: Basiskonfiguration der Datenbankspiegelung 1 Die Datenbankspiegelungs-Funktion ist Bestandteil von SQL Server 2005, sie steht jedoch nicht zum Launch am 7. November 2005 zur Verfügung. Es ist geplant, die Datenbankspiegelung mit dem Service Pack 1 im ersten Halbjahr 2006 auszuliefern. Weitere Informationen hierzu finden Sie auf der Seite Die Datenbankspiegelungs-Funktion in Microsoft SQL Server 2005. Failoverclustering Failoverclustering ist eine Hochverfügbarkeitslösung, mit der unter Verwendung der Clusterdienste von Microsoft Windows fehlertolerante virtuelle Server erstellt werden können, die im Fall eines Fehlers auf dem Datenbankserver einen schnellen Failover ermöglichen. In SQL Server 2005 wurde die Unterstützung für Failoverclustering auf die Analysis Services, Notification Services und Replikation von SQL Server erweitert. Die maximale Anzahl der Clusterknoten wurde auf acht erhöht. Das Failoverclustering von SQL Server ist nun eine vollständig fehlertolerante Lösung. Verfügbarkeitsfunktion Datenbankspiegelung Failoverclustering Automatischer Failover Ja Ja Transparente Clientumleitung Ja, automatische Ja, erneutes Verbinden mit derselben Umleitung IP Kein Einfluss bis minimal Kein Einfluss Kein Datenverlust Ja Ja Erfordert zertifizierte Hardware Nein Ja Stellt redundante Daten bereit Ja Nein Einfluss auf den Gesamtdurchsatz Datenbanksnapshots SQL Server 2005 eröffnet Datenbankadministratoren die Möglichkeit, aktuelle schreibgeschützte Ansichten einer Datenbank zu erstellen. Dieser Datenbanksnapshot ermöglicht eine statische Ansicht ohne den Zeit- oder Speicheraufwand bei der Erstellung einer vollständigen Kopie der Datenbank. Wenn die primäre Datenbank vom Snapshot abweicht, werden vom Snapshot eigene Kopien von Seiten hinzugefügt, sobald diese geändert werden. Dadurch kann mithilfe des Snapshots die unbeabsichtigte Änderung einer Datenbank schnell rückgängig gemacht werden, indem die Originalseiten aus dem Snapshot einfach auf die primäre Datenbank erneut angewendet werden. Schnelle Wiederherstellung SQL Server 2005 verbessert die Verfügbarkeit von SQL Server-Datenbanken mit einer neuen und schnelleren Wiederherstellungsoption. Benutzer können zur wiederhergestellten Datenbank erneut eine Verbindung herstellen, sobald ein Rollforward des Transaktionsprotokolls ausgeführt wurde. Bei früheren Versionen von SQL Server mussten Benutzer auch dann auf ein Rollback unvollständiger Transaktionen warten, wenn ein Zugriff auf betroffene Teile der Datenbank nicht erforderlich war. Dedizierte Administratorverbindung Mit SQL Server 2005 wird eine dedizierte Administratorverbindung eingeführt, um auf einen ausgeführten Server auch dann zugreifen zu können, wenn dieser nicht reagiert oder in anderer Weise nicht verfügbar ist. Dadurch können Diagnosefunktionen oder Transact-SQL-Anweisungen ausgeführt werden, um Probleme auf einem Server zu beheben. Die Verbindung wird durch Mitglieder der festen Serverrolle 'sysadmin' aktiviert und ist nur über die SQLCMD-Eingabeaufforderung entweder lokal oder von einem Remotecomputer aus verfügbar. Onlineoperationen (Indexoperationen und Wiederherstellung) Die Möglichkeit, einen Index online zu erstellen, neu zu erstellen oder zu löschen, ist eine verbesserte Funktion von SQL Server 2005, mit der die Indizierungsfunktionalität früherer Versionen von SQL Server weiter optimiert wurde. Die Onlineindexoption ermöglicht während der Ausführung von Index-DDL (Data Definition Language) mehrere Änderungen gleichzeitig (Aktualisierungen, Löschungen und Einfügungen) an der zugrunde liegenden Tabelle oder den Clusterindexdaten und zugehörigen Indizes. Mit der Unterstützung für Onlineindexoperationen können Indizes hinzugefügt werden, ohne den Zugriff auf Tabellen oder andere vorhandene Indizes zu beeinflussen. Außerdem lässt die Arbeitsauslastung des Servers Indexoperationen zu, um die Vorteile der parallelen Verarbeitung zu nutzen. SQL Server 2005 bietet nun auch die Möglichkeit, einen Wiederherstellungsvorgang durchzuführen, während eine Instanz von SQL Server ausgeführt wird. Durch Online-Wiederherstellungsfunktionen wird die Verfügbarkeit von SQL Server erhöht, da nur die wiederherzustellenden Daten nicht verfügbar sind. Der übrige Teil der Datenbank bleibt online und verfügbar. In früheren Versionen von SQL Server musste eine Datenbank zu ihrer Wiederherstellung in den Offlinestatus versetzt werden. Replikation Durch Replikation wird die Datenverfügbarkeit erhöht, indem die Daten über mehrere Datenbankserver hinweg verteilt werden. Die Verfügbarkeit wird gesteigert, indem Anwendungen die Lesearbeitsauslastung von SQL Server über Datenbanken hinweg skalieren können. SQL Server 2005 bietet eine verbesserte Replikation und greift auf ein Peer-to-Peer-Modell mit neuer Topologie zurück, in der Datenbanken mit einer beliebigen identischen Peer-Datenbank mithilfe von Transaktionen synchronisiert werden können. Skalierbarkeit Durch Verbesserungen bei der Skalierbarkeit, wie z. B. Tabellenpartitionierung, Snapshotisolation und 64-Bit-Unterstützung, können Sie mithilfe von SQL Server 2005 die anspruchvollsten Anwendungen erstellen und bereitstellen. Durch die Partitionierung großer Tabellen und Indizes wird die Abfrageleistung bei sehr großen Datenbanken maßgeblich verbessert. Tabellen- und Indexpartitionierung Mithilfe von Tabellen- und Indexpartitionierung wird die Verwaltung großer Datenbanken durch die Zerlegung in kleinere, leichter verwaltbare Teile vereinfacht. Das Konzept der Datenpartitionierung über Tabellen, Datenbanken und Server hinweg ist in der Welt der Datenbanken nichts Neues. SQL Server 2005 bietet dagegen eine neue Funktion für die Partitionierung von Tabellen über Dateigruppen innerhalb einer Datenbank hinweg. Durch horizontale Partitionierung wird die Teilung einer Tabelle in kleinere Gruppen basierend auf einem Partitionierungsschema ermöglicht. Tabellenpartitionierung wurde für sehr große Datenbanken entworfen, die von einigen Hundert Gigabyte bis in den Terabytebereich und darüber hinaus reichen. Snapshotisolation Nachdem Daten in einer zur Analyse bestimmten Datenbank gespeichert, transformiert und archiviert wurden, müssen sie regelmäßig gepflegt und/oder neu erstellt werden. Sicher profitieren Benutzer davon, eine transaktionell konsistente Version der Datenbank einzusehen. Die angezeigte Version der Daten ist jedoch in diesem Fall nicht mehr aktuell. Das Erstellen und Indizieren der Daten kann zum Leidwesen des Benutzers viele Stunden dauern. Hier empfiehlt sich die Verwendung der Snaphotisolation. Mithilfe der Snapshotisolationsstufe können Benutzer unter Verwendung einer transaktionell konsistenten Ansicht der Datenbank auf die letzte Zeile zugreifen, für die ein Commit ausgeführt wurde. Diese neue Ebene der Isolation bietet folgende Vorteile: • • Erhöhung der Datenverfügbarkeit für Anwendungen, die nur lesende Zugriffe ausführen. • • Automatische obligatorische Konflikterkennung bei Schreibtransaktionen. Nicht blockierende Lesevorgänge sind in einer Umgebung für die Onlinetransaktionsverarbeitung (OLTP – Online Transaction Processing) zugelassen. Vereinfachte Migration von Anwendungen von Oracle nach SQL Server. Replikationsmonitor Replikationsmonitor ist ein Tool, das bei der Vereinfachung der Verwaltung komplexer Datenreplikationsoperationen durch eine intuitive Benutzeroberfläche und eine Vielzahl von Datenmetriken neue Maßstäbe setzt. Sicherheit SQL Server 2005 bietet ein maßgeblich verbessertes Sicherheitsmodell der Datenbankplattform mit der Intention, eine präzisere und flexiblere Steuerung zu ermöglichen, um die Datensicherheit zu erhöhen. Bei einer Vielzahl von Funktionen wurde ein beträchtlicher Aufwand betrieben, um ein hohes Maß an Sicherheit für Unternehmensdaten zu gewährleisten. Dazu zählen: • • • Erzwingen von Richtlinien für SQL Server-Anmeldekennwörter im Authentifizierungsbereich. Feinere Abstufung bei der Vergabe von Berechtigungen in verschiedenen Bereichen der Autorisierung. Zulassen der Trennung von Besitzern und Schemas im Bereich der Sicherheitsverwaltung. Autorisierung Ein neues Sicherheitsmodell in SQL Server 2005 ermöglicht Administratoren, Berechtigungen genauer abgestuft und für einen festgelegten Geltungsbereich zu verwalten, sodass die Verwaltung der Berechtigungen vereinfacht und das Prinzip der geringsten Berechtigungen eingehalten wird. SQL Server 2005 ermöglicht die Angabe eines Kontexts, unter dem Anweisungen in einem Modul ausgeführt werden. Diese Funktion dient auch als hervorragender Mechanismus für eine präzise Berechtigungsverwaltung. Authentifizierung Das Clustering von SQL Server 2005 unterstützt die Kerberos-Authentifizierung gegen einen virtuellen Server von SQL Server 2005. Administratoren können Richtlinien im Microsoft Windows-Stil für Standardanmeldungen festlegen, sodass eine konsistente Richtlinie über alle Konten und Domänen hinweg angewendet wird. Systemeigene Verschlüsselung SQL Server 2005 unterstützt Verschlüsselungsfunktionen direkt innerhalb der Datenbank mit einer vollständig integrierten Infrastruktur für die Schlüsselverwaltung. In der Standardeinstellung ist die Client-/Serverkommunikation verschlüsselt. Für die zentrale Sicherheitsgarantie kann eine Serverrichtlinie festgelegt werden, um unverschlüsselte Kommunikation abzulehnen. SQL Server und Trustworthy Computing Die Microsoft Trustworthy Computing-Initiative definiert ein Framework, in dem die nötigen Schritte für den sichereren Computereinsatz sowie Maßnahmen für die Bereitstellung und Wartung einer sichereren Umgebung festgelegt sind. Diese Schritte helfen beim Schutz der Vertraulichkeit, Integrität und Verfügbarkeit von Daten und Systemen in jeder Phase des Softwarelebenszyklus' – vom Entwurf über die Bereitstellung bis hin zur Wartung. Um die vier Grundsätze der Trustworthy Computing-Initiative einzuhalten, haben sich Microsoft und das SQL Server-Team der folgenden Probleme angenommen: • Sicherheit im Entwurf. Das SQL Server-Entwicklungsteam führte mehrere Sicherheitsprüfungen durch und verbrachte mehr als zwei Monate damit, die SQL Server-Komponenten und die Interaktion zwischen ihnen zu studieren. Für jede potenzielle Sicherheitsbedrohung führte das Team eine Bedrohungsanalyse durch, um das Problem zu untersuchen. Anschließend wurden zusätzliche Entwürfe und Tests durchgeführt, um die potenziellen Sicherheitsprobleme zu neutralisieren. Aufgrund dieser Bemühungen beim Entwurf enthält SQL Server 2005 viele neue Funktionen zur Serversicherheit. • Sichere Standardeinstellungen. Bei der Installation wählt SQL Server 2005 für alle Setupoptionen den richtigen Satz an Konfigurationswerten aus, um sicherzustellen, dass sich neu installierte Systeme standardmäßig in einem sicheren Zustand befinden. • Sicherheit bei der Bereitstellung. Microsoft hat Inhalte und Werkzeuge entwickelt, um Organisationen dabei zu helfen, SQL Server mit den geeigneten Sicherheitsanmeldeinformationen bereitzustellen und die Schritte und erforderlichen Berechtigungen vollständig zu verstehen. SQL Server-Bereitstellungstools bieten die notwendigen Informationen, um die Entscheidungen zu verstehen, die bei der Bereitstellung getroffen werden müssen. Sicherheitsupdates sind leicht zu finden und zu installieren – und wenn Sie die entsprechende Option auswählen, werden diese automatisch installiert. Außerdem sind Tools verfügbar, mit denen Sicherheitsrisiken in Organisationen beurteilt und bewältigt werden können. Entwicklerproduktivität SQL Server 2005 enthält viele neue Technologien, die die Entwicklerproduktivität maßgeblich verbessern. Von der .NET Framework-Unterstützung bis zur engen Integration von Visual Studio statten diese Funktionen Entwickler mit der Fähigkeit aus, sichere und robuste Datenbankanwendungen auf einfachere Weise zu geringeren Kosten zu entwickeln. SQL Server 2005 ermöglicht Entwicklern durch die Bereitstellung einer End-to-End-Entwicklungsumgebung für die Datenbank, vorhandene Fähigkeiten in einer Vielzahl von Programmiersprachen zu nutzen. Außerdem können Entwickler mit systemeigenen XML-Funktionen neue Klassen von integrierten Anwendungen für beliebige Plattformen und Geräte erstellen. Zu den Verbesserungen für die Entwicklerproduktivität zählen: • • • • • • Erweiterte Sprachunterstützung Verbesserte Entwicklungstools Erweiterbarkeit Verbesserter Datenzugriff XML und Webdienste Anwendungsframework Erweiterte Sprachunterstützung Da die Common Language Runtime (CLR) von der Datenbankengine gehostet wird, können Entwickler bei der Entwicklung von Datenbankanwendungen aus einer Vielzahl bekannter Sprachen wählen, wie z. B. Transact-SQL, Microsoft Visual Basic .NET und Microsoft Visual C# .NET. Zusätzlich bietet das CLRHosting Entwicklern durch benutzerdefinierte Typen und Funktionen mehr Flexibilität. Die CLR bietet außerdem die Möglichkeit, für die schnelle Entwicklung von Datenbankanwendungen Code zu verwenden, der nicht von Microsoft stammt. CLR-/.NET Framework-Integration Mit der Veröffentlichung von SQL Server 2005 können Datenbankprogrammierer nun alle Vorteile der Microsoft .NET Framework-Klassenbibliothek und moderner Programmiersprachen nutzen, um Funktionalität auf dem Server zu implementieren. Durch die CLR-Integration können gespeicherte Prozeduren, Funktionen und Trigger in der .NET Framework-Sprache Ihrer Wahl codiert werden. Sowohl Microsoft Visual Basic .NET als auch die C#-Programmiersprache bieten objektorientierte Konstrukte, strukturierte Ausnahmebehandlung, Arrays, Namespaces und Klassen. Zusätzlich enthält das .NET Framework Tausende von Klassen und Methoden mit umfassenden integrierten Funktionen, die leicht auf dem Server verwendet werden können. Viele Aufgaben, die in Transact-SQL umständlich oder schwierig durchzuführen waren, können durch verwalteten Code besser erfüllt werden. Außerdem sind zwei neue Typen von Datenbankobjekten – Aggregate und benutzerdefinierte Typen – verfügbar. Ihre Kenntnisse und Fähigkeiten, die Sie beim Schreiben von In-Process-Code erworben haben, können Sie nun besser einsetzen. Kurz gesagt, mithilfe von SQL Server 2005 können Sie den Datenbankserver erweitern, um geeignete Berechnungen und Operationen auf dem Backend leichter durchführen zu können. Diese Integration von SQL Server und der CLR bietet mehrere wichtige Vorteile: • Erweitertes Programmiermodell. Mit dem .NET Framework kompatible Programmiersprachen sind in vielerlei Hinsicht ergiebiger als Transact-SQL, da Konstrukte und Funktionen angeboten werden, die SQL Server-Entwicklern vorher nicht zur Verfügung standen. • Erweiterte Sicherheit. Verwalteter Code wird in einer CLR-Umgebung ausgeführt, die vom Datenbankmodul gehostet wird. Dadurch sind .NET Framework-Datenbankobjekte sicherer als die erweiterten gespeicherten Prozeduren der früheren Versionen von SQL Server. • Benutzerdefinierte Typen und Aggregate. Durch das Hosten der CLR können zwei neue Datenbankobjekte verwendet werden, mit denen die Speicher- und Abfragefunktionen von SQL Server erweitert werden. • Einheitliche Entwicklungsumgebung. Die Datenbankentwicklung ist in die Entwicklungsumgebung von Microsoft Visual Studio 2005 integriert. Zum Entwickeln und Debuggen von Datenbankobjekten und Skripten können dieselben Tools verwendet werden wie zum Schreiben von Middle-Tier- oder Client-Tier-.NET Framework-Komponenten und -Diensten. • Leistung und Skalierbarkeit. Da verwalteter Code vor der Ausführung in Maschinencode kompiliert wird, kann in einigen Szenarios eine maßgebliche Leistungssteigerung erzielt werden. Durch die Verwendung von Sprachen wie Visual Basic .NET und C# kann die CLR-Integration zum Schreiben von Code genutzt werden, der über eine komplexere Logik verfügt und geeigneter für Berechnungsaufgaben ist. Außerdem bieten Visual Basic .NET und C# objektorientierte Funktionen wie z. B. Kapselung, Vererbung und Polymorphie. Zusammengehöriger Code kann leicht in Klassen und Namespaces organisiert werden. Dadurch wird das Organisieren und Warten von Code beim Arbeiten mit umfangreichem Code vereinfacht. Die Möglichkeit, Code logisch und physisch in Assemblys und Namespaces zu organisieren, ist ein großer Vorteil, da die verschiedenen Teile des Codes in einer großen Datenbankimplementierung einfacher gefunden und zugeordnet werden können. Verwalteter Code ist beim Verarbeiten von Zahlen und beim Verwalten komplizierter Ausführungslogik effizienter als Transact-SQL und bietet umfangreiche Unterstützung für Zeichenfolgenverarbeitung, reguläre Ausdrücke usw. Außerdem haben Sie mit der in der .NET Framework-Klassenbibliothek enthaltenen Funktionalität vollständigen Zugriff auf Tausende vorgefertigter Klassen und Routinen, die von allen Prozeduren, Triggern oder benutzerdefinierten Funktionen aus verfügbar sind. Auf verbesserte Zeichenfolgenverarbeitungsfunktionen, mathematische Funktionen, Datumsoperationen, Zugriffe auf Systemressourcen, erweiterte Verschlüsselungsalgorithmen, Dateizugriffe, Bildverarbeitung und XMLDatenbearbeitung kann von verwalteten gespeicherten Prozeduren, Funktionen, Triggern und Aggregaten aus leicht zugegriffen werden. Einer der Hauptvorteile von verwaltetem Code ist die Typensicherheit. Vor der Ausführung von verwaltetem Code werden von der CLR während des Überprüfungsprozesses mehrere Tests durchgeführt, um sicherzustellen, dass der Code sicher ausgeführt werden kann. Beispielsweise wird der Code daraufhin überprüft, dass kein Speicher gelesen wird, in den nichts hineingeschrieben wurde. Verbesserungen von Transact-SQL Transact-SQL war lange die Grundlage für die Programmierbarkeit von SQL Server. SQL Server 2005 bietet viele neue Sprachfunktionen zum Entwickeln skalierbarer Datenbankanwendungen. Zu den Verbesserungen zählen Fehlerbehandlung, neue rekursive Abfragefunktionen sowie die Unterstützung für neue SQL Server-Funktionen des Datenbankmoduls. Durch die Verbesserungen von Transact-SQL können Sie Ihre kreativen Fähigkeiten beim Schreiben von Abfragen noch erhöhen, da Sie dadurch die Leistung des Codes verbessern und die Funktionen zur Fehlerverwaltung erweitern können. Die beständigen Bemühungen, Transact-SQL weiterzuentwickeln, zeigen die feste Überzeugung, dass diese Sprache für SQL Server eine bedeutende Rolle spielt. Verbesserte Entwicklungstools Entwickler müssen zukünftig nur noch ein Entwicklungstool für Transact-SQL, XML, multidimensionale Ausdrücke (MDX) und XML for Analysis (XMLA) verwenden. Die Integration in die Visual StudioEntwicklungsumgebung ermöglicht ein effizienteres Entwickeln und Debuggen von Line-of-Business- und Business Intelligence-(BI-)Anwendungen. Business Intelligence Development Studio Business Intelligence Development Studio ist eine allgemeine Entwicklungsumgebung zum Erstellen von auf Visual Studio basierenden BI-Lösungen, die ein Datenbankmodul, Analysedienste und Berichterstellungsdienste enthält. Mit der grafischen Benutzeroberfläche (GUI) von Business Intelligence Development Studio können Sie SQL Server Integration Services-(SSIS-)Pakete für Anwendungen zur Datenverwaltung entwerfen. SSIS-Pakete werden in Business Intelligence Development Studio entworfen, entwickelt und debuggt, indem Aufgaben aus der Toolbox gezogen, ihre Eigenschaften festgelegt und die Aufgaben mit Rangfolgeneinschränkungen verknüpft werden. Abbildung 2 zeigt die Benutzeroberfläche in Visual Studio für Business Intelligence Development Studio. Abbildung 2: Benutzeroberfläche von Business Intelligence Development Studio in Visual Studio Visual Studio-Integration SQL Server 2005 and Visual Studio 2005 bieten ein sehr hohes Maß an Integration zwischen der Datenbank und der Anwendungsentwicklungsumgebung. Entwickler haben nun die Möglichkeit, gespeicherte Prozeduren, Funktionen, benutzerdefinierte Typen und benutzerdefinierte Aggregate der CLR direkt in der Entwicklungsumgebung von Visual Studio zu erstellen. Diese neuen Datenbankobjekte können ohne Verwendung anderer Tools direkt von Visual Studio aus bereitgestellt werden. Visual Studio 2005 unterstützt alle neuen SQL Server-Datentypen direkt, wie z. B. den systemeigenen XMLTyp. Außerdem können CLR-Datenbankobjekte demselben Quellcodeverwaltungssystem hinzugefügt werden, das auch für alle anderen Visual Studio-Projekte verwendet wird. Dadurch wird ein noch höheres Maß an Integration und Sicherheit Ihrer Entwicklungsprozesse erreicht. Debuggen verschiedener Anwendungsebenen und unterschiedlicher Sprachen SQL Server 2005 und Visual Studio 2005 bieten zusammen eine noch engere Integration im Bereich des Debuggens von Anwendungen. Mit dieser Kombination wird das nahtlose Debuggen von CLR- und Transact-SQL-Code möglich, da dieselbe Debuggingoberfläche von Visual Studio verwendet wird. Außerdem ist das Debuggen von CLR nach Transact-SQL und umgekehrt möglich. Dabei ist es unerheblich, ob sich der Code auf dem Entwicklercomputer oder in der SQL Server-Datenbank befindet. Erweiterbarkeit Benutzerdefinierte Typen und Aggregate Benutzerdefinierte Typen sind in SQL Server 2005 kein objektrelationaler Erweiterbarkeitsmechanismus. Sie stellen eine Möglichkeit dar, das System skalarer Typen der Datenbank zu erweitern. Zum System skalarer Typen gehören die Spaltentypen, die in SQL Server enthalten sind (Typen wie int, nvarchar, uniqueidentifier usw.). Mit benutzerdefinierten Typen können eigene Typen definiert werden, die beispielsweise für Spaltendefinitionen verwendet werden können. Erstellen Sie einen benutzerdefinierten Typ, wenn es sich bei dem Typ um einen wirklich atomaren Wert handelt, der zur Darstellung als Spalte geeignet ist. Verwenden Sie benutzerdefinierte Typen, wenn Sie einen eigenen skalaren Typ definieren möchten. Beispielszenarios für solche Typen sind benutzerdefinierte Datum-/Uhrzeit-Datentypen in verschiedenen Kalendern sowie Währungsdatentypen. Mit benutzerdefinierten Typen kann ein einzelnes Objekt erstellt werden, das alle für diesen Typ verfügbaren Verhaltensweisen zur Verfügung stellt und die zugrunde liegenden Daten, die durch den Typ gespeichert werden, kapselt bzw. verbirgt. Jeder, der auf die Daten zugreifen möchte, muss dazu die Programmierschnittstelle des benutzerdefinierten Typs verwenden. Wenn Sie die bestehende Funktionalität im .NET Framework vorteilhaft nutzen können (wie z. B. die Internationalisierung oder Kalenderfunktionen), ist dies ein weiterer gewichtiger Grund für die Implementierung des Typs als benutzerdefinierten Typ. In einer Reihe von Szenarien müssen möglicherweise Aggregationen von Daten durchgeführt werden. Dazu zählen statistische Berechnungen, wie z. B. avg, stddev usw. Wenn die gewünschte Aggregatfunktion nicht direkt als integrierte Aggregatfunktion unterstützt wird, gibt es drei Möglichkeiten, eine benutzerdefinierte Aggregation in SQL Server 2005 durchzuführen: • • • Schreiben der Aggregation als benutzerdefiniertes Aggregat. Schreiben des Aggregats mithilfe einer gespeicherten CLR-Prozedur. Verwendung eines serverseitigen Cursors. SQL Management Objects SQL Management Objects (SMO) ist das Verwaltungsobjektmodell für SQL Server 2005. SMO steht für maßgebliche Verbesserungen in Entwurf und Architektur des SQL Server-Verwaltungsobjektmodells. Dieses benutzerfreundliche und zugleich umfangreiche Objektmodell basiert auf verwaltetem Code des .NET Framework. SMO ist das wichtigste Tool zum Entwickeln von Datenbankmanagementanwendungen mithilfe des .NET Framework. SMO wird von jedem Dialogfeld in SQL Server Management Studio verwendet, und jede administrative Aktion, die in SQL Server Management Studio durchgeführt werden kann, ist auch mithilfe von SMO möglich. Das neue SMO-Objektmodell und die Anwendungsprogrammierschnittstellen (APIs) der Microsoft Windows-Verwaltungsinstrumentation (WMI) ersetzen SQL-DMO. Soweit möglich, werden in SMO zur einfacheren Verwendung ähnliche Objekte wie in SQL-DMO bereitgestellt. SQL Server 2005 kann immer noch mit SQL-DMO zusammen verwendet werden, Aktualisierungen für die Verarbeitung spezieller Funktionen von SQL Server 2005 werden jedoch nicht mehr vorgenommen. Analysis Management Objects Mit Analysis Management Objects (AMO) können Clientanwendungen auf das Spektrum administrativer Befehle und Funktionen zugreifen, die für Analysis Services verfügbar sind. Dabei wird eine Objektbibliothek verwendet, die Überprüfungsfunktionen auf Objektebene bereitstellen kann. Eine manuelle Erstellung von DDL-Skripts für Analysis Services-Befehle und der oft langwierigen Inhalte des ObjectDefinition-Elements der Analysis Services-Skriptsprache (ASSL) ist dadurch nicht mehr nötig. Anwendungen, die AMO verwenden, können entweder direkt mit Objekten einer Analysis ServicesInstanz verbunden sein und damit arbeiten oder solche Objekte ohne bestehende Verbindung erstellen und die Metadaten zur späteren Bereitstellung beibehalten. AMO dienen auch als eine Art "Wrapper" für ASSL-Befehle und -Elemente. Verbesserter Datenzugriff und verbesserte Webdienste In SQL Server 2005 können XML-Webdienste auf Datenbankebene erstellt werden, indem SQL Server die Funktion eines HTTP-Listeners übernimmt. Dadurch entsteht eine neue Art der Datenzugriffsfunktionalität für Anwendungen, die Webdienste verwenden. In SQL Server 2005 kann HTTP verwendet werden, um auf SQL Server direkt zuzugreifen, ohne einen Middle-Tier-Listener wie Microsoft Internetinformationsdienste (IIS) verwenden zu müssen. SQL Server enthält eine Schnittstelle für Webdienste, über die SQL-Anweisungen ausgeführt sowie Funktionen und Prozeduren aufgerufen werden können. Abfrageergebnisse werden im XML-Format zurückgegeben und können die Infrastruktur für Webdienste von Visual Studio nutzen. ADO.NET 2.0/ADOMD.NET In der nächsten Version von ADO.NET ist vieles neu. Von der neuen Unterstützung für Abfrageänderungsbenachrichtigungen bis hin zu MARS (Multiple Active Result Sets) werden mit ADO.NET Datensatzzugriff und -bearbeitung entwickelt, um eine größere Skalierbarkeit und Flexibilität zu erreichen. Abfragebenachrichtigung Mit SQL Server 2005 wird die Benachrichtigungsunterstützung für SQL Server-Abfragen eingeführt. Sie können einen Befehl an SQL Server senden und eine Anforderung stellen, dass eine Benachrichtigung erstellt wird, wenn sich Ergebnisse bei der wiederholten Ausführung eines Befehls von den ursprünglichen Ergebnissen unterscheiden. Dies kann durch die Verwendung eines Abhängigkeitsobjekts erreicht werden, das erkennt, wenn die zugrunde liegenden Daten geändert werden. Befehle, die über eine Client-API, wie z. B. ADO.NET, OLE DB, Open Database Connectivity (ODBC), Microsoft ActiveX Data Objects (ADO) oder Simple Object Access Protocol (SOAP), an den Server gesendet werden, können ein Tag enthalten, das eine Benachrichtigung erfordert. Für jede Anweisung, die als Teil der Anforderung ausgeführt wird, erstellt der Server ein Benachrichtigungsabonnement, das einmal für jede in der Anforderung enthaltene Anweisung ausgelöst wird. Benachrichtigungen werden über eine Warteschlange des SQL Service Brokers gesendet, die von Anwendungen abgerufen werden kann und Aktivierungsdienste oder Sperranweisungen verwendet, die ein Ergebnis zurückgeben, sobald die Benachrichtigungen verfügbar sind. Abfragebenachrichtigungen sind nützlich zur Aktivierung der Zwischenspeicherung von Ergebnissen in Anwendungen wie z. B. datenbankgesteuerten Websites. In Abbildung 3 wird der Prozess der Abfragebenachrichtigung dargestellt. Abbildung 3: Abfragebenachrichtigung MARS MARS (Multiple Active Result Sets) bietet die Möglichkeit mehrerer ausstehender Anforderungen pro Verbindung. Dies dient insbesondere dazu, mehr als ein offenes Standardresultset pro Verbindung zur Verfügung zu haben. Standardresultsets sind schreibgeschützte Vorwärtsresultsets. Bei Standardresultsets werden die Daten von den Clienttreibern in großen Abschnitten transparent abgerufen (Tabular Data Stream-Abschnitte in Puffergröße), sodass Anwendungsanforderungen ohne Roundtrip zum Server erfüllt werden können (wie im Fall von Servercursorn). Die Anwendung kann ein einfaches Row-at-a-Time-Programmiermodell verwenden, ohne die Leistung zu beeinflussen. Mit der MARSFunktion wird die bisherige Beschränkung aufgehoben, dass der Treiber von einem offenen Standardresultset so lange davon abgehalten wird, Anforderungen an den Server zu senden, bis das gesamte Resultset entgegengenommen wurde. Transparenter Failover zur Datenspiegelung SQL Server 2005 unterstützt eine "Hot Spare"-Funktion durch Datenbankspiegelung. Wenn eine SQL Server-Instanz ausfällt, kann die Arbeit automatisch auf den Sicherungsserver übertragen werden. Dazu ist eine Instanz für die Bestätigung des Failovers notwendig, die auch als "Zeugeninstanz" bezeichnet wird. Hot Spare-Szenarios erfordern außerdem, dass vorhandene Clientverbindungen "wissen" müssen, dass ein Failover stattfindet, sodass sie eine Verbindung zur neuen Serverinstanz herstellen. Clientverbindungen, die beim versuchten Zugriff einen Fehler erzeugen und bei denen der Failover per Programm durchgeführt werden muss, sind nicht optimal. SqlClient in ADO.NET 2.0 unterstützt Clientfailover ohne spezielle Programmierung des Anwendungsprogramms. XML-Unterstützung Durch Weiterentwicklungen, wie dem systemeigenen XML-Datentyp und XQuery, können Organisationen interne und externe Systeme nahtlos miteinander verbinden. SQL Server 2005 unterstützt intern relationale sowie XML-Daten, sodass Unternehmen die Daten in dem Format speichern, verwalten und analysieren können, das ihren Anforderungen am besten entspricht. Durch die Unterstützung für vorhandene und neu entstehende offene Standards, wie z. B. HTTP (Hypertext Transfer Protocol), XML, SOAP (Simple Object Access Protocol), XQuery und XML Schema Definition Language (XSD), wird die Kommunikation in erweiterten Unternehmenssystemen ebenfalls vereinfacht. XML-Datentyp Mit XML können komplexe Daten beschrieben werden. Es gibt keine Beschränkung auf die skalaren Typen, die von SQL Server unterstützt werden. Als solches reicht ein zeichenfolgenbasierter, integrierter Datentyp wie char oder varchar nicht aus, um die Leistung und die zahlreichen Vorteile von XML voll auszuschöpfen. Wenn XML beispielsweise als Zeichenfolge gespeichert ist, kann ein vollständiges Dokument eingefügt oder ausgewählt werden, oder es können sogar zusammenhängende Bytes daraus abgerufen werden. Eine Abfrage in den Inhalten des Dokuments selbst ist dagegen nicht möglich. Durch Bereitstellung des XML-Datentyps bietet SQL Server 2005 die Möglichkeit, Teile eines XML-Dokuments abzufragen, zu überprüfen, ob das Dokument einem XML-Schema entspricht, und sogar den Inhalt des XML-Dokuments direkt zu ändern. Außerdem werden traditionelle, relationale Daten zusammen mit Daten in unstrukturierten oder halbstrukturierten XML-Dokumenten in einer Weise integriert, die in SQL Server 2000 nicht möglich ist. In SQL Server 2005 werden XML-Daten als BLOBs (Binary Large Objects) in einer internen Darstellung gespeichert, die eine effiziente Analyse und Komprimierung ermöglicht. Eine Auflistung von XML-Schemas kann mit einer Spalte vom Typ XML verknüpft werden. Dies ermöglicht eine Gültigkeitsprüfung für Einschränkungen, Einfügungen und Aktualisierungen, die Typisierung von Werten innerhalb gespeicherter XML-Daten sowie Optimierungen für die Speicher- und Abfrageverarbeitung. SQL Server 2005 enthält außerdem mehrere DDL-Anweisungen zum Verwalten von Schemas auf dem Server. XQuery Die XML Query Language, oder XQuery, ist eine intelligente und robuste Sprache, die für die Abfrage aller Typen von XML-Daten optimiert ist. Mit XQuery können Abfragen auf Variablen und Spalten vom Datentyp XML mithilfe seiner zugehörigen Methoden ausgeführt werden. Wie bei vielen XML-Standards beaufsichtigt das World Wide Web Consortium (W3C) die Entwicklung von XQuery. XQuery entwickelte sich aus einer Abfragesprache mit dem Namen Quilt, die wiederum auf einer Vielzahl an Abfragesprachen basierte, wie z. B. die XML Path Language (XPath) Version 1.0, XQL (XML Query Language) und SQL. Sie enthält auch XPath 2.0 als Untermenge. Wenn Sie über Erfahrungen in der Verwendung von XPath 1.0 verfügen, können Sie diese daher nutzen und müssen nicht eine vollkommen neue Abfragesprache erlernen. Es gibt jedoch wesentliche Verbesserungen, die über XPath 1.0 hinausgehen, wie z. B. Typisierung, spezielle Funktionen sowie Unterstützung für bessere Iteration, Sortierung von Ergebnissen und Konstruktion. SQL Server 2005 wird mit umfassenden XQuery-Funktionen ausgeliefert, die die XML-Objektbearbeitung auf der Datenebene ermöglichen. Unterstützt wird eine statisch typisierte Untermenge des XQuery 1.0Arbeitsentwurfs vom 15. November 2003. Unterstützung für Webdienste In SQL Server 2005 können XML-Webdienste auf Datenbankebene erstellt werden, indem SQL Server die Funktion eines HTTP-Listeners übernimmt. Dadurch entsteht eine neue Art der Datenzugriffsfunktionalität für Anwendungen, die Webdienste verwenden. In SQL Server 2005 kann HTTP verwendet werden, um auf SQL Server direkt zuzugreifen, ohne einen Middle-Tier-Listener wie Microsoft Internetinformationsdienste (IIS) verwenden zu müssen. SQL Server enthält eine Schnittstelle für Webdienste, über die SQL-Anweisungen ausgeführt sowie Funktionen und Prozeduren aufgerufen werden können. Abfrageergebnisse werden im XML-Format zurückgegeben und können die Infrastruktur für Webdienste von Visual Studio nutzen. XML for Analysis Services (XMLA) XML for Analysis Services (XMLA) ist das systemeigene, auf Standards basierende Protokoll zur Kommunikation mit dem Analysis Services-Server. Dadurch werden neue Arten von Anwendungen mit einfacher Entwicklung möglich – Anwendungen, die Analytik mit Operationen in Echtzeit integrieren. Mit XMLA als systemeigenes Protokoll können Analysis Services-Clients für minimalen Ressourcenbedarf konfiguriert werden, und jeder Server übernimmt automatisch die Funktion eines Webdiensts. Eine Win32-Schicht mit wenig Ressourcenbedarf ist für die Abwärtskompatibilität mit Tools verfügbar, die mit Analysis Services 2000 über OLE DB für OLAP, ADOMD und ADOMD.NET funktionieren. Viele Benutzer bleiben bei der Verwendung des ADOMD.NET-Objektmodells zur Erstellung von benutzerdefinierten Anwendungen für Analysis Services. Anwendungsframework Mit SQL Server 2005 wird ein neues SQL Server-Anwendungsframework eingeführt, das Service Broker, Notification Services, SQL Server Mobile und SQL Server Express umfasst. Service Broker ist ein verteiltes Anwendungsframework, das zuverlässiges asynchrones Messaging zwischen Datenbanken ermöglicht. Service Broker In den letzten zehn Jahren wurde durch die Ausbreitung von E-Commerce-Anwendungen eine verbesserte Verwaltung des Workflows zwischen Datenbankanwendungen erforderlich. Wenn ein OnlineKunde ein Buch bestellt, müssen Transaktionen in den Bestands-, Versand- und Kreditkartensystemen durchgeführt werden, und darüber hinaus muss mittels einer weiteren Webanwendung eine Auftragsbestätigung gesendet werden. Eine Skalierung ist aufgrund des Wartens, bis all diese Prozesse in der entsprechenden Reihenfolge durchgeführt wurden, schlecht möglich. SQL Server 2005 bietet eine neue skalierbare Architektur zum Erstellen von asynchronem Nachrichtenrouting. In Abbildung 4 wird die Service Broker-Architektur skizziert. Abbildung 4: Service Broker-Architektur Mithilfe der Service Broker-Technologie können interne oder externe Prozesse Streams von verlässlichen asynchronen Nachrichten senden und empfangen. Dazu werden Erweiterungen der normalen TransactSQL-Datenbearbeitungssprache verwendet. Nachrichten werden an eine Warteschlange in der Datenbank des Absenders gesendet, an eine andere Datenbank in derselben Instanz von SQL Server oder an eine andere Instanz von SQL Server auf demselben Server oder auf einem Remoteserver. Microsoft SQL Server Notification Services sind eine Plattform für die Entwicklung und Bereitstellung von Anwendungen, in denen Benachrichtigungen erstellt und an Benutzer gesendet werden. Benachrichtigungen sind personalisierte, aktuelle Nachrichten, die an eine Reihe von Geräten gesendet werden können. Benachrichtigungen entsprechen den Einstellungen des Abonnenten. Der Abonnent signalisiert mit seinem Abonnement ein Interesse an Informationen, wie z. B. "Benachrichtige mich, wenn der Aktienkurs von Adventure Works 70,00 $ erreicht" oder "Benachrichtige mich, wenn der Strategieentwurf, an dem mein Team arbeitet, aktualisiert wird". Eine Benachrichtigung kann erstellt und an den Benutzer gesendet werden, sobald ein auslösendes Ereignis eintritt oder nach einem vom Benutzer festgelegten Zeitplan. Das Abonnement des Benutzers gibt an, wann die Benachrichtigung erstellt und gesendet werden soll. Eine Benachrichtigung kann an viele Geräte gesendet werden, z. B. an das Mobiltelefon, den PDA (Personal Digital Assistant), Microsoft Windows Messenger oder das E-Mail-Konto eines Benutzers. Da sich diese Geräte oft in Reichweite des Benutzers befinden, sind Benachrichtigungen ideal zum Senden von Informationen mit hoher Priorität. SQL Server Mobile Edition SQL Server 2000 wurde mit SQL Server 2000 Windows CE Edition ausgeliefert. An deren Stelle ist nun SQL Server Mobile Edition Version 3.0 enthalten. In SQL Server Mobile Edition gibt es viele neue wichtige Funktionen für Entwickler: • Auf dem Desktop oder dem Gerät kann direkt von SQL Server Management Studio aus eine SQL Server Mobile Edition-Datenbank erstellt werden. Außerdem kann das Schema der SQL Server Mobile Edition-Datenbank direkt von Management Studio aus bearbeitet werden, unabhängig davon, ob sich die Datenbank auf dem mobilen Gerät oder dem Desktop befindet. Mit SQL Server Management Studio können Abfragen ausgeführt werden, die sich auf eine SQL Server Mobile Edition-Datenbank auf dem Gerät oder dem Desktop beziehen. Sie können außerdem die Vorteile der neuen Funktionen von SQL Server Mobile Edition nutzen, wie den XML-Showplan, der im selben systemeigenen Format wie die grafische Benutzeroberfläche von SQL Server dargestellt wird, sowie die Möglichkeit, mithilfe von Abfragehinweisen den Abfrageoptimierer in SQL Server Mobile Edition zu ersetzen. Zum ersten Mal können Sie den Optimierungsplan auf einem Gerät steuern. • Sie können nun Code für SQL Server Integration Services-(SSIS-)Objekte schreiben, um Daten • Das neue Resultset SqlCeResult ist vom Resultset SQLResult in SQL Server 2005 abgeleitet. Dadurch auszutauschen. verfügt SQL Server Mobile Edition über einen wirklich bildlauffähigen und aktualisierbaren Cursor. Außerdem wird das Binden an Datenobjekte auf Geräten möglich. • Eine Anwendung kann so programmiert werden, dass sie Daten synchronisiert während die Hauptanwendung geöffnet bleibt, und zwei separate Anwendungen können gleichzeitig auf eine Datenbank auf dem Gerät zugreifen. • Sie können Benachrichtigungen erhalten und als Statusleisten codieren, die den Synchronisierungsstatus angeben. Bisher gab es keine Möglichkeit, den Fortschritt des Synchronisierungsstatus zu ermitteln, um den Benutzer zu benachrichtigen, dass ein Gerät weiterhin reagierte. • Die geringe Größe der Datenbank kann durch eine wesentlich schärfere Seitenreklamationsrichtlinie • Parametrisierter Abfragecode kann mit SQL Server-Syntax gemeinsam genutzt werden. beibehalten werden. SQL Server Express Relationale Datenbanken werden von Entwicklern mehr als je zuvor genutzt, um den Komfort des Endbenutzers sicherzustellen. Der Schutz und die Verwaltung von Informationen innerhalb dieser Anwendungen ist wichtig. Microsoft SQL Server Express hilft Entwicklern mittels einer freien, benutzerfreundlichen und robusten Datenbank, stabile und zuverlässige Anwendungen zu entwickeln. Zu oft sind Datenbanksysteme zu komplex für die Erstellung einfacher Anwendungen. Mit Microsoft Visual Studio 2005 und SQL Server Express wird diese Komplexität verringert, indem eine einfache und zugleich leistungsstarke Entwicklungsumgebung für die Erstellung datengesteuerter Anwendungen bereitgestellt wird. Entwickler haben die Möglichkeit, Schemas zu entwerfen, Daten hinzuzufügen und lokale Datenbanken abzufragen, und das alles innerhalb der Visual Studio 2005-Umgebung. Wenn Entwickler erweiterte Datenbankfunktionen benötigen, kann SQL Server Express nahtlos auf umfangreichere Versionen von SQL Server aktualisiert werden. Abbildung 5 zeigt die Benutzeroberfläche des AbfrageEditors in SQL Server Express Manager. Abbildung 5: Der Abfrage-Editor in SQL Server Express Manager Ein neues Tool mit grafischer Benutzeroberfläche mit dem Namen SQL Server Express Manager (XM) ist kostenlos als separater Webdownload verfügbar. XM enthält einfache Funktionen zur Datenbankverwaltung und Abfrageanalyse, hat eine geringe Downloadgröße und ist kostenlos weiterverteilbar. XM unterstützt Verbindungen zu SQL Server Express und anderen SQL Server 2005Versionen, SQL Server 2000 und MSDE 2000. Ein vereinfachtes Verbindungsdialogfeld führt den Benutzer durch die Auswahl der entsprechenden Instanz und Authentifizierungsmethoden. Mit XM sind lokale und Remoteverbindungen möglich. In Objekt-Explorer werden die allgemeinen verwendeten Objekte hierarchisch aufgelistet und angezeigt, wie z. B. die Instanz, Tabellen, gespeicherte Prozesse usw. Der Zugriff auf die Datenbank wird somit für den Benutzer visualisiert. Alle Funktionen zur Datenbankverwaltung sind über das Kontextmenü der rechten Maustaste in ObjektExplorer verfügbar. Einige der verfügbaren Optionen zur Datenbankverwaltung sind das Erstellen und Bearbeiten von Datenbanken, Tabellen, Anmeldungen und Benutzern. Viele dieser allgemeinen Datenbankoperationen sind als Aufgabenassistenten verfügbar, die den Benutzer durch den Vorgang führen, während andere als Fenster mit Registerkarten verfügbar sind. Beispielsweise enthält XM ein Dokument zum Erstellen neuer Datenbanken und Bearbeiten vorhandener Datenbanken. Viele Datenbankbenutzer bevorzugen die Verwaltung der Server mittels Transact-SQL, da dieser Ansatz eine präzisere Steuerung als die grafische Benutzeroberfläche ermöglicht. Mit dem Abfrage-Editor in XM können Benutzer Transact-SQL-Anweisungen und -Skripten entwickeln und ausführen. Der AbfrageEditor verfügt über umfangreiche Features, wie die Farbcodierung von Schlüsselwörtern und einen Ergebnisbereich, in dem Ergebnisse in einem Datenraster zurückgegeben werden. Etwaige Fehlermeldungen werden ebenfalls im Ergebnisbereich angezeigt. Business Intelligence Mit SQL Server 2005 erweitert Microsoft seine Marktführung im Bereich Business Intelligence (BI) durch Innovationen bei Skalierbarkeit, Datenintegration, Entwicklungstools und umfangreichen Analysefunktionen. SQL Server 2005 ermöglicht skalierbare BI, indem wichtige, aktuelle Informationen in die Hände der Mitarbeiter Ihres Unternehmens gelegt werden. Vom CEO bis zum Information Worker haben die Mitarbeiter schnellen und leichten Zugriff auf Daten, um schnellere und bessere Entscheidungen treffen zu können. Durch die umfassenden Funktionen für Integration, Analyse und Berichterstellung von SQL Server 2005 können Unternehmen den Nutzen der vorhandenen Anwendungen unabhängig von der zugrunde liegenden Plattform steigern. Zu den BI-Features zählen Verbesserungen in den folgenden Bereichen: • • • • • Eine integrierte End-to-End-Plattform für Business Intelligence Integration Services Analysis Services Reporting Services Integration in Microsoft Office System Integrierte End-to-End-Plattform für Business Intelligence SQL Server 2005 ist eine umfangreiche BI-Plattform, mit der Funktionen und Tools bereitgestellt werden, um klassische und innovative Formen von Analyseanwendungen erstellen zu können. Es folgt eine Einführung in die Tools zur Erstellung einer Analyseanwendung, in der die neuen Funktionen hervorgehoben werden, die das Erstellen und Verwalten komplexer BI-Systeme so einfach wie noch nie machen. Das SQL Server 2005-BI-Toolset bietet die Integration von End-to-End-BI-Anwendungen: • Entwerfen. Business Intelligence Development Studio ist die erste integrierte Entwicklungsumgebung, die für BI-Entwickler entworfen wurde. Aufbauend auf Visual Studio 2005 bietet Business Intelligence Development Studio eine umfangreiche, integrierte, professionelle Entwicklungsplattform für BI-Systementwickler. Debugging, Quellcodeverwaltung sowie Skript- und Codeentwicklung sind für alle Komponenten der BI-Plattform verfügbar. • Integrieren. SQL Server Integration Services (SSIS) wurde neu geschrieben, um komplexe Datenintegration, -transformation und -synthese für sehr große Datenmengen in hoher Geschwindigkeit durchführen zu können. Mit Business Intelligence Development Studio macht das Erstellen und Debuggen von Paketen sogar Spaß. Integration Services, Analysis Services und Reporting Services arbeiten zusammen, um eine nahtlose Ansicht von Daten aus heterogenen Quellen zu präsentieren. • Analysieren. Microsoft Data Mining war schon immer leicht zu bedienen. Es wurde nun durch weitere wichtige Algorithmen weiter verbessert, wie Zuordnungsregeln, Zeitreihen, Regressionsstrukturen, Sequenzcluster, neuronale Netzwerke und Naïve Bayes. SQL Server 2005 verwischt die Grenzen zwischen relationalen und multidimensionalen Datenbanken. Sie können Daten in der relationalen Datenbank oder in der multidimensionalen Datenbank speichern oder mit der neuen Funktion für proaktives Zwischenspeichern das beste aus beiden Welten herausholen. Wichtige neue Analysefunktionen wurden außerdem zu den Analysis Services-Cubes hinzugefügt. Dazu zählen das KPI-Framework (Key Performance Indicator), MDX-Skripte und weitere integrierte fortgeschrittene Geschäftsanalysefunktionen. Das Reporting Services-Framework zum Erstellen und Verwalten von Berichten ermöglicht die einfache Verteilung komplexer Analytik an eine größtmögliche Zielgruppe. • Erstellen von Berichten. Durch Reporting Services wird die Microsoft BI-Plattform erweitert, um den Geschäftsbenutzer zu erreichen, der die Analyse benötigt. Reporting Services stellen eine vom Unternehmen verwaltete Berichterstellungsumgebung dar, eingebettet und verwaltet über Webdienste. Berichte können personalisiert und in einer Vielzahl von Formaten bereitgestellt werden und verfügen über eine Reihe von Optionen für Interaktivität und Druck. Komplexe Analysen können eine breite Zielgruppe erreichen, indem Berichte als Datenquelle für BI im Downstream verteilt werden. Neu bei SQL Server 2005 ist das Berichterstellungstool Report Builder. • Verwalten. SQL Server Management Studio integriert die Verwaltung aller SQL Server 2005Komponenten. BI-Fachleute profitieren von diesen Erweiterungen der Serverfunktionen, die von dem relationalen Modul bis hin zum vollständigen Komponentensatz der BI-Plattform erwartet werden – Skalierbarkeit, Zuverlässigkeit, Verfügbarkeit, Programmierbarkeit usw. Integration Services SQL Server 2005 enthält eine neu entworfene ETL-Unternehmensplattform (ETL – Datenextrahierungs-, Datentransformations- und Datenladeprozesse) mit dem Namen SQL Server Integration Services (SSIS). Mit SSIS können Organisationen Daten aus mehreren heterogenen Informationsquellen leichter integrieren und analysieren. Durch die Analyse von Daten über eine Reihe von Betriebssystemen hinweg können sich Unternehmen durch ein ganzheitliches Verständnis ihres Geschäftsbereichs im Wettbewerb besser behaupten. ETL-Unternehmensplattform Diese neue Plattform ist der Nachfolger des beliebten SQL Server 2000-Features Data Transformation Services (DTS). SSIS wurde vollständig neu für SQL Server 2005 entwickelt. SSIS bietet das Spektrum an Features und die starke Leistung, die für die Entwicklung von ETL-Anwendungen für Unternehmen notwendig sind. SSIS ist vollständig programmierbar, erweiterbar und kann eingebettet werden – Merkmale, die eine ideale ETL-Plattform ausmachen. Über traditionelles ETL hinaus Mit den folgenden Funktionen unterstützt SQL Server 2005 nicht-traditionelle Daten (Webdienste, XML) standardmäßig: • • • SSIS bietet Analysefunktionen für Daten, ohne diese permanent zu speichern. Data Mining und Text Mining können im Datenfluss durchgeführt werden. Data Mining und Analysefunktionen werden für die Qualität und Bereinigung der Daten im Datenfluss angewendet. Analysis Services Mit SQL Server 2005 bietet Analysis Services zum ersten Mal eine vereinheitlichte und integrierte Ansicht aller Geschäftsdaten als Grundlage für die traditionelle Berichterstellung, OLAP-Analyse (Online Analytical Processing – Analytische Onlineverarbeitung) und Data Mining. Unified Dimensional Model Durch das Verbinden der Vorteile herkömmlicher OLAP-Analysen und relationaler Berichterstellung bietet Analysis Services ein Metadatenmodell, mit dem beide Anforderungen erfüllt werden können. Ein Satz von Cubes und Dimensionen, die in Analysis Services definiert sind, wird als Unified Dimensional Model (UDM) bezeichnet. Das UDM ist ein zentrales Metadatenrepository, in dem Geschäftsentitäten, Geschäftslogik, Berechnungen und Metriken definiert sind, die als Quelle für alle Berichte, Kalkulationstabellen, OLAP-Browser, KPIs und Analyseanwendungen dienen. Mithilfe des leistungsstarken neuen Datenquellensicht-Features wird das UDM einer Reihe heterogener Back-End-Datenquellen zugeordnet, um ein vollständiges und integriertes Geschäftsbild zu erstellen, unabhängig davon, wo die Daten gespeichert sind. Mit den hilfreichen Beschreibungen der Geschäftsentitäten, Navigationshierarchien, verschiedenen Ansichten und sogar automatischen Übersetzungen in die eigenen Sprachen ist es für Benutzer einfach, die Geschäftsdaten des Unternehmens zu durchsuchen. Data Mining SQL Server 2005 Data Mining ist die BI-Technologie, mit der komplexe analytische Modelle erstellt und in die geschäftlichen Vorgänge integriert werden können. Analysis Services bietet eine neue Grundlage für Data Mining. Durch die Erstellung einer benutzerfreundlichen, erweiterbaren, zugreifbaren und flexiblen Plattform ermöglichen die Funktionen von Analysis Services das Data Mining auch für Organisationen, die bis dahin niemals eine Data Mining-Lösung in Betracht gezogen hätten. Durch eine auf Unternehmen ausgerichtete Architektur, eine enge Integration mit der SQL Server-Familie der BI-Tools und einen umfangreichen Satz von anderen Tools, APIs und Algorithmen ermöglicht SQL Server die Erstellung einer neuen Form von intelligenten Anwendungen, mit denen die Produktivität gesteigert und die Kosten reduziert werden, indem benutzerdefinierte, datengesteuerte Lösungen für ein breites Spektrum an geschäftlichen Problemen bereitgestellt werden. Reporting Services Mit Reporting Services wird die BI-Plattform von Microsoft erweitert, um den Information Worker zu erreichen, der Zugriff auf die Geschäftsdaten benötigt. Reporting Services ist eine serverbasierte Berichterstellungsumgebung für Unternehmen, die über Webdienste verwaltet wird. Berichte können in einer Vielzahl von Formaten bereitgestellt werden und verfügen über ein Spektrum an Optionen für Interaktivität und Druck. Komplexe Analysen können eine breite Zielgruppe erreichen, indem Berichte als Datenquelle für BI im Downstream verteilt werden. Die integrierte SQL Server 2005-Komponente Reporting Services bietet folgende Funktionen: • • • Ein Hochleistungsmodul zur Verarbeitung und Formatierung von Berichten. Einen vollständigen Satz von Tools zum Erstellen, Verwalten und Anzeigen von Berichten. Eine erweiterbare Architektur sowie offene Schnittstellen zum Einbetten von Berichten oder Integrieren von Berichterstellungslösungen in diverse IT-Umgebungen. Relationale Berichte und OLAP-Berichte Auf relationalen Daten beruhende Berichte sind nützlich, eine solche Berichterstellung kann jedoch erst durch das Hinzufügen zusätzlicher analytischer Funktionen die volle Leistungsfähigkeit entfalten. Mit Reporting Services können Berichte auf einfache Weise zusammen oder separat erstellt werden. SQL Server 2005 unterstützt sowohl relationale Daten als auch OLAP-Daten und bietet einen Abfrage-Editor für beides. Enthalten sind der SQL-Abfrage-Editor und der MDX-Abfrage-Editor. Report Builder Mit dem Report Builder, einer neuen Komponente von SQL Server 2005 Reporting Services, können Benutzer ihre eigenen Berichte mithilfe eines benutzerfreundlichen Modells ihrer Daten erstellen. Report Builder nutzt die Reporting Services-Plattform, um eine aktuelle Berichterstellung für alle Endbenutzer zu gewährleisten. Benutzer können Berichte mithilfe der Clientanwendung Report Builder erstellen und bearbeiten. Die Benutzeroberfläche von Report Builder setzt auf bewährten Microsoft Office-Paradigmen wie Microsoft Excel und Microsoft PowerPoint auf. Abbildung 6 zeigt ein Beispiel für einen Report BuilderBericht. Abbildung 6: Entwerfen von Berichten mit Report Builder Report Builder ist eine ClickOnce-Anwendung, die über den Browser bereitgestellt wird. Benutzer wählen zuerst Berichtlayoutvorlagen aus, die vordefinierte Datenabschnitte enthalten, wie z. B. Tabellen, Matrizen und Diagramme. Anschließend werden Berichtelemente vom Modell auf die Entwurfsoberfläche gezogen und Einschränkungen zur Filterung der Berichtdaten festgelegt. Das Modell enthält alle nötigen Informationen, damit Report Builder die Quellabfrage automatisch erstellt und die angeforderten Daten abruft. Mit Report Builder haben Benutzer auch die folgenden Möglichkeiten: • • • • Hinzufügen von Text und Formatierung zu Berichten. Erstellen neuer Felder und Berechnungen, die mithilfe des Modells definiert werden. Vorschau, Druck und Veröffentlichung von Berichten. Exportieren von Berichtdaten in Formate wie Microsoft Excel. Integration in Microsoft Office System Berichte, die von Report Server in Reporting Services bereitgestellt werden, können im Kontext von Microsoft SharePoint Portal Server und Microsoft Office System-Anwendungen wie z. B. Microsoft Word und Microsoft Excel ausgeführt werden. Mithilfe der SharePoint-Features können Berichte abonniert, neue Versionen von Berichten erstellt sowie Berichte verteilt werden. Berichte können auch in Word oder Excel geöffnet werden, um HTML-Versionen der Berichte anzuzeigen. Aktualisierung auf SQL Server 2005 Nachfolgend finden Sie einige Tipps zur Aktualisierung auf SQL Server 2005. • • Aktualisieren Sie von SQL Server 7.0 oder SQL Server 2000 auf SQL Server 2005. • Das SQL Server-Datenbankmodul, Analysis Services und Reporting Services können durch das Setup- • SQL Server Integration Services, der Ersatz für DTS (Datentransformationsdienste – Data Führen Sie vor dem Aktualisieren den Updateratgeber (SQL Server 2005 Upgrade Advisor) aus, um zu ermitteln, ob durch Produktänderungen vorhandene Anwendungen beeinflusst werden. Programm aktualisiert werden. Transformation Services), wird neben DTS installiert. DTS-Pakete können mithilfe der DTSLaufzeitkomponenten ausgeführt werden. • SQL Server 2005 Notification Services wird neben Notification Services 2.0 installiert. Instanzen von Notification Services müssen beim Aktualisieren des SQL Server-Datenbankmoduls nach SQL Server 2005 migriert werden. • Verwenden Sie nach dem Aktualisieren das Tool zur Konfiguration der Oberfläche, um SQL Server 2005-Dienste, Netzwerkprotokolle und Funktionen zu aktivieren oder zu deaktivieren.