19 Existierende Mehrrechner-Datenbanksysteme
19.13 Abschließende Bemerkungen
Die (unvollständige) Übersicht existierender Produkte zeigt, daß es zur parallelen und verteilten DB-Verarbeitung bereits eine ganze Reihe leistungsfähiger Implementierungen gibt. Zusammenfassend lassen sich dabei folgende Beobachtungen treffen:
- Parallele DBS sind auf dem Vormarsch. Implementierungen bestehen für beide Hauptansätze, nämlich Shared-Disk (IBM Parallel Sysplex, Parallel Transaction Server und Parallel Query Server, Oracle Parallel Server, DEC, Ingres) sowie Shared-Nothing (Teradata, Tandem NonStop SQL, Sybase Navigation Server, DB2/6000). Daneben werden auch Multiprozessoren von vielen DBS zur parallelen DB-Verarbeitung genutzt.
- Eine Client/Server-Verarbeitung, bei der DB-Anwendungen und Tools von Client-Rechnern (PCs, Workstations, etc.) auf Server-Datenbanken zugreifen, erlauben fast alle Systeme. Für den Zugriff auf mehrere, heterogene Server-Datenbanken in einer Transaktion bzw. in einer DB-Operation werden die drei wichtigsten Alternativen unterstützt: programmierte Verteilung, Verteilung von DB-Operationen sowie föderative DBS.
- Verteilte DBS im eigentlichen Sinn, bei denen eine logische Datenbank unter mehreren, geographisch verteilten Knoten aufgeteilt wird, unterstützen relativ wenige Hersteller (Computer Associates, Cincom). Diese Systeme verlangen i.a. eine homogene Umgebung (identische DBVS-Instanzen) und beschränken die Autonomie der beteiligten Knoten.
- Die Ansätze zur verteilten DB-Verarbeitung in Ingres/Star, Oracle, Informix-Star, Sybase OmniSQL etc. entsprechen dagegen lose gekoppelten föderativen DBS. Es liegen mehrere, unabhängige Datenbanken vor, auf denen mit einer einheitlichen Anfragesprache (SQL) verteilte Operationen formuliert werden. Ortstransparenz wird i.a. über die Verwendung von Synonymen erreicht. Das eng gekoppelte föderative DBS UniSQL/M bietet eine weitergehende Verteilungstransparenz, indem eine Schemaintegration der lokalen Datenbanken vorgenommen wird.
- Eine für den Benutzer transparente Fragmentierung von Relationen wird außer in parallelen Shared-Nothing-DBS meist nicht unterstützt, ebensowenig replizierte Datenbanken in ihrer allgemeinen Form (Änderungsmöglichkeit aller Kopien, vollständige Aktualität, volle Replikationstransparenz). Eine Ausnahme stellt nur CA-DB:STAR von Computer Associates dar. Neben dem hohen Realisierungsaufwand dürfte der Grund dafür sein, daß die Erfüllung dieser Forderungen zwangsweise eine enge Zusammenarbeit der beteiligten Rechner und damit eine Reduzierung der Knotenautonomie erfordert.
- Weite Verbreitung finden jedoch die einfacheren Replikationsansätze der Schnappschuß-Replikation bzw. zur Katastrophen-Recovery. Ein (transparentes) verteiltes 2PC wird mittlerweile von den meisten Systemen unterstützt, zum Teil bereits im Betriebssystem (VMS, Guardian).
- Die Zusammenarbeit zwischen Produkten verschiedener Hersteller erfolgt meist über Gateways, deren Funktionalität jedoch oft eingeschränkt ist (vielfach nur lesende Zugriffe bzw. keine verteilten Transaktionen). Standardisierungen wie DRDA und ODBC gewinnen jedoch zunehmend an Bedeutung.
- Eine verteilte Transaktionsverarbeitung mit programmierter Verteilung wird von zahlreichen TP-Monitoren unterstützt. Damit wird der Zugriff auf mehrere, heterogene DBS unter Wahrung einer hohen Knotenautonomie erreicht. Neben LU6.2 setzt sich zunehmend die verteilte Transaktionsverarbeitung nach X/Open durch, da immer mehr TP-Monitore und DBS die XA-Schnittstelle unterstützen.