Share via


Entwickeln von Anwendungen für die Verwendung vereinter Datenbankserver

Aktualisierbare, verteilte partitionierte Sichten ermöglichen es, dass sich Gruppen aus SQL Server 2005-Servern die Datenbankarbeitslast der größten mehrstufigen Websites untereinander aufteilen. Obwohl jeder Server gesondert verwaltet wird, verwenden die Instanzen von SQL Server 2005 auf den einzelnen Servern verteilte partitionierte Sichten zur Aufteilung der Arbeit. Eine Gruppe autonomer Server, die zur Aufteilung der Arbeit zusammenarbeiten, wird als Föderation bezeichnet.

Sie erstellen vereinte Datenbankserver durch Erstellen von Datenbanken auf den einzelnen Servern und anschließendes Partitionieren der Tabellen über die Datenbanken hinweg. Jede Originaltabelle wird in eine Elementtabelle auf den einzelnen Mitgliedsservern unterteilt. Jede Elementtabelle verfügt über eine Teilmenge der Zeilen aus der Originaltabelle; die Originaltabelle ist über die Elementtabellen hinweg horizontal partitioniert. Beim Entwerfen eines vereinten Datenbanksystems sollten Sie alle Tabellen so partitionieren, dass sich alle zusammenhängenden Daten auf demselben Mitgliedsserver befinden.

Ein Ergebnis der Partitionierung von Tabellen über eine Reihe vereinter Datenbankserver hinweg ist eine Menge von Datensenderegeln. Eine Anwendung kann Datenfragmente, die sie aus Benutzeranforderungen folgern kann, mit den Datensenderegeln abgleichen. Damit kann ermittelt werden, welcher Mitgliedsserver den größten Teil der von den SQL-Anforderungen benötigten Daten hat, die die Anwendung generieren muss, um die Benutzeranforderung zu erfüllen. Weitere Informationen finden Sie unter Entwerfen von vereinten Datenbankservern.

In einer Multi-Tier-Architektur wird ein System in den folgenden Stufen implementiert:

  • Benutzerdienstebene. Eine Reihe von reduzierten Clients mit dem Schwerpunkt auf der Verwaltung der Benutzeroberfläche der Anwendung. Die Benutzerdienstebene ruft die nächste Stufe auf, um die zur Unterstützung von Benutzeranforderungen notwendigen Geschäftsfunktionen auszuführen.

  • Unternehmensdienstebene. Eine Reihe von COM+-Komponenten, die die Geschäftslogik der Organisation abbilden. Die Unternehmensdienstebene verwendet bei Bedarf die nächste Stufe zur dauerhaften Datenspeicherung.

  • Datendienstebene. Eine Reihe von Komponenten, wie SQL Server-Datenbanken, die Daten in einem dauerhaften Medium speichern können. Dies wird auch als dauerhaftes Beibehalten der Daten bezeichnet.

Die Unternehmensdienstebene ist als eine Reihe von COM+-Komponenten konzipiert, die auf Anwendungsservern ausgeführt werden. So kann der Netzwerklastenausgleich von Microsoft Benutzeranforderungen gleichmäßig über die Geschäftsdienstestufe verteilen. Da Benutzeranforderungen Prozesse auf Anwendungsservern sein können, müssen die Geschäftskomponenten über einen Mechanismus zur Weiterleitung der generierten SQL-Anweisungen an den entsprechenden Mitgliedsserver verfügen. Die Geschäftskomponenten müssen in der Lage sein, Datenfragmente, die vom Client stammen, mit den Datensenderegeln abzugleichen, um zu ermitteln, welcher Mitgliedsserver die Anforderung verarbeiten sollte.

Ein flexibler Mechanismus für die Implementierung des Datensendens auf der Unternehmensdienstebene besteht darin, die Senderegeln in einem ständigen Datenspeicher, wie SQL Server 2005 oder Windows Active Directory, zu speichern und dann zur Laufzeit von den Geschäftskomponenten abrufen zu lassen. Sie können eine COM+-Komponente so codieren, dass sie Schlüssel gegen die Senderegeln abgleicht, um zu ermitteln, welcher Mitgliedsserver die Abfrage am effizientesten verarbeiten würde. Diese COM+-Sendekomponente kann dann von jeder anderen COM+-Komponente, die zur Unternehmensdienstebene gehört und auf die partitionierten Daten zugreifen muss, aufgerufen werden. Folgendes ist z. B. in einem System, das auf Kundendaten, partitioniert nach Kunden-IDs, zugreifen muss, möglich:

  • Erstellen einer Tabelle für Senderegeln, die aufzeichnet, welche Schlüssel auf den einzelnen Mitgliedsservern verwaltet werden.

  • Erstellen einer Geschäftskomponente für das Senden von Daten, die entweder einen einzelnen Schlüsselwert oder die Anfangs- und Endschlüssel eines Bereichs von Schlüsselwerten als Eingabe erwartet. Die COM+-Komponente liest die Tabelle für Senderegeln, vergleicht den eingegebenen Schlüssel oder Schlüsselbereich mit den für die Mitgliedsserver aufgezeichneten Schlüsselbereichen und gibt dann den Namen des Mitgliedsservers zurück, der die beste Übereinstimmung mit der aufrufenden Komponente oder Anwendung erzielt hat.

  • Codieren der allgemeinen Komponenten oder Anwendungen der Unternehmensdienstebene, sodass die Datensendekomponente immer dann aufgerufen wird, wenn eine SQL-Anwendung ausgeführt wird, die auf die partitionierte Sicht verweist. Die Geschäftskomponente verwendet den von der Datensendekomponente zurückgegebenen Servernamen zur Auswahl der Datenbankverbindung, über die die SQL-Anweisung ausgeführt werden soll.

Bei dieser Methode sind keine Änderungen am Anwendungscode notwendig, falls die Partitionierung der Daten geändert wird. Die Datensenderegeln können während des Ausführens der Anwendungen geändert werden.

Siehe auch

Konzepte