Skip to main content

1997 | Buch

Adaptive Datenreplikation in verteilten Systemen

verfasst von: Dr. Richard Lenz

Verlag: Vieweg+Teubner Verlag

Buchreihe : TEUBNER-TEXTE zur Informatik

insite
SUCHEN

Über dieses Buch

Die elektronische Datenverarbeitung dringt immer mehr in alle Lebensbereiche vor. Computer werden immer leistungsfähiger und preiswerter. Im Rahmen dieser Tendenzen wächst auch die Speicherkapazität der Rechner mit jeder neuen Rechnergeneration. Als entscheidender Faktor der Entwicklung in den letzten Jahren ist jedoch die weltweite Ver­ netzung von Rechnern zu nennen, die es ermöglicht hat, daß in kürzester Zeit viele neue Anwendungsgebiete erschlossen wurden und neue, stark expandierende Wirtschafts­ zweige entstanden sind. Vielfach wird das Zeitalter der Informationstechnologie heute schon proklamiert. Information ist zu einer kostbaren Ressource geworden, die genutzt werden kann und muß, um die Konkurrenzfähigkeit von Unternehmen sicherzustellen. Angesichts dieser Entwicklung ist es nicht verwunderlich, daß der Verfügbarkeit von Da­ ten eine zunehmend große Bedeutung beigemessen wird. Die Replikation von Daten ist das wichtigste und effektivste Mittel zur Erreichung einer hohen Verfügbarkeit in verteil­ ten Datenverwaltungssystemen. Durch Replikation wird die Zugriffslokalität ermöglicht, die für akzeptable Antwortzeiten oft vorausgesetzt werden muß. Da die Speicherkapazi­ tät der Rechner einen ständig geringer werdenden Kostenfaktor darstellt, lohnt sich die Replikation von Daten, zumindest bei Daten, die selten geändert werden, immer mehr.

Inhaltsverzeichnis

Frontmatter
1. Einleitung
Zusammenfassung
Datenbanksysteme haben sich heutzutage als zentrale Systemkomponenten in der betrieblichen Datenverarbeitung weitgehend etabliert. Historisch wurde die Entwicklung von Datenbanksystemen durch die Unzulänglichkeiten dateibasierter Informationssysteme motiviert ([Dad961). In dateibasierten Informationssystemen werden typischerweise die Daten, die von einer Anwendung bearbeitet werden, in einer eigens für diese Anwendung reservierten Datei gehalten. Falls bestimmte Daten von mehreren Anwendungen benötigt werden und jede dieser Anwendung die Daten jeweils in einer eigenen Datei ablegt, so entsteht auf diese Weise eine unkontrollierte Redundanz, die eine Reihe schwerwiegender Nachteile mit sich bringt:
  • Änderungen an einer Datei müssen explizit vom Anwender in redundanten Dateien nachgezogen werden, um die zu verarbeitenden Daten möglichst aktuell zu halten.
  • Unkoordinierte Änderungen an redundanten Dateien können nicht verhindert werden. Die dadurch entstehenden Inkonsistenzen müssen im Rahmen einer expliziten Zusammenführung divergierender Dateien beseitigt werden.
  • Verschiedene Anwendungen verwenden verschiedene Dateiformate. Um redundante Dateien wechselseitig konsistent zu halten, sind somit Konvertierungen erforderlich.
Richard Lenz
2. Verteilte Datenverwaltungssysteme
Zusammenfassung
Ceri und Pelagatti definieren in [CP85] eine verteilte Datenbank wie folgt:
„Eine verteilte Datenbank ist eine Ansammlung von Daten, die über verschiedene Rechner innerhalb eines Rechnernetzes verteilt ist. Jeder Knoten in diesem Netzwerk ist in der Lage, autonom Berechnungen durchzuführen und lokale Anwendungen auszuführen. Jeder Knoten partizipiert darüber hinaus an der Ausführung mindestens einer global verteilten Anwendung, die unter Benutzung eines Kommunikationssubsystems den ZugriffaufDaten an verschiedenen Knoten erfordert.“
Richard Lenz
3. Grundlagen der Datenreplikation
Zusammenfassung
Ausgehend von einer Analyse der logischen Grundlagen der Datenreplikation werden in diesem Kapitel zunächst die Zielsetzungen und Randbedingungen der Datenreplikation diskutiert. Anschließend werden Verfahren zur Synchronisation von Replikaten auf der Basis des klassischen Korrektheitskriteriums One-Copy-Serialisierbarkeit vorgestellt. Dieses Kapitel bildet damit die Grundlage für die anwendungsbezogenen Konzepte der Datenreplikation, die im nachfolgenden Kapitel erörtert werden.
Richard Lenz
4. Datenverwaltung aus Anwendungssicht
Zusammenfassung
Ein Datenverwaltungssystem erbringt eine Dienstleistung für verschiedene sehr unterschiedlich geartete Anwendungen. Die Anforderungen der Anwendungen an das Datenverwaltungssystem beschränken sich aber nicht nur auf das zuverlässige Abspeichern von Daten und die konsistente Bereitstellung von möglichst aktuellen Daten, sondern umfassen insbesondere auch den effizienten Umgang mit Daten. Effizienz beinhaltet in diesem Zusammenhang neben der Forderung nach einer möglichst kurzen Zugriffszeit beispielsweise auch die Forderung nach möglichst hoher Verfügbarkeit eines Datums. Die konsistente Verarbeitung nebenläufiger Anwendungstransaktionen wirkt der so definierten Effizienz entgegen. Dabei ist insbesondere festzuhalten, daß für manche Anwendungen der effiziente Zugriff durchaus wichtiger als Konsistenz ist. Ebenso gibt es auch Anwendungen, für die ein konsistenter Zugriff unerläßlich ist. Um eine möglichst gute Anpassung an die jeweiligen Erfordernisse einer Anwendung zu gewährleisten, scheint es somit sinnvoll zu sein, das Datenverwaltungssystem in die Lage zu versetzen, auf die Anforderungen der Anwendungen in geeigneter Weise zu reagieren. Dazu ist es erforderlich, Mittel bereitzustellen, die es einer Anwendung erlauben, bezüglich des Zielkonfliktes (“Trade-off”) zwischen Konsistenz und Effizienz eine anwendungsspezifische Kompromißlösung zu spezifizieren.
Richard Lenz
5. ASPECT — Konzeptioneller Entwurf einer Spezifikationsmethodologie für Konsistenzanforderungen
Zusammenfassung
Im vorangegangenen Kapitel wurde bereits deutlich, daß die Umsetzung des Need-To-Know Prinzips in einem adaptiven verteilten Datenverwaltungssystem zunächst die Spezifikation der Konsistenzanforderungen der Anwendungen voraussetzt. Zur Sicherstellung dieser Anforderungen sind entsprechende Maßnahmen erforderlich, die im Rahmen verteilter Protokolle automatisch durchzuführen sind. Diese Protokolle müssen in einer Weise fehlertolerant sein, die es ermöglicht, die Nichteinhaltung von spezifizierten Konsistenzanforderungen in angemessener Weise zu behandeln, zumindest aber zu erkennen. An dieser Stelle soll nun ausdrücklich auf die konzeptionelle Trennung von Spezifikation und Protokoll hingewiesen werden. Dieses Kapitel befaßt sich ausschließlich mit der Spezifikation von Konsistenzanforderungen. Sie ist in erster Linie dazu erforderlich, dem verteilten Datenverwaltungssystem Informationen bezüglich der Semantik der Anwendungen zur Verfügung zu stellen. Protokolle zur Sicherstellung von Konsistenzanforderungen nutzen diese Information aus, um beispielsweise die Verfügbarkeit zu erhöhen oder die Zugriffslokalität zu steigern und somit die Performanz zu verbessern. Dies bedeutet, daß insbesondere solche Spezifikationen von Interesse sind, die Optimierungen bezüglich der Systemeffizienz und der Performanz versprechen. In den nachfolgenden Kapiteln wird jedoch deutlich werden, daß die Sicherstellung bestimmter Konsistenzanforderungen sehr komplexe und aufwendige Protokolle erfordern kann. Die Umsetzung mancher Konsistenzanforderungen ist so aufwendig, daß der Gewinn hinsichtlich Verfügbarkeit und Antwortzeitverkürzung gemessen am Wartungsaufwand sehr gering ist. Andere Anforderungen wiederum können mit einfachen Mitteln sichergestellt werden und stellen somit gute Hilfsmittel zur Systemoptimierung dar. Darüber hinaus können natürlich auch unterschiedliche Protokolle zur Sicherstellung der gleichen Konsistenzanforderungen verwendet werden. Die Vorteile, die aus den hier besprochenen Spezifikationen für die Antwortzeiten oder die Verfügbarkeit erzielt werden können, hängen immer von dem konkreten Protokoll ab, das für die Sicherstellung verwendet wird.
Richard Lenz
6. Adaptive Replikationskontrolle
Zusammenfassung
Die ASPECT-Spezifikation, die im vorangegangenen Kapitel konzeptionell erörtert wurde, ermöglicht es dem verteilten Datenverwaltungssystem, die Semantik von Datenbankanwendungen im Rahmen der Protokolle zur Replikationskontrolle und Synchronisation auszunutzen, um so eine hohe Anpassung an die Anwendungserfordernisse zu erreichen. Voraussetzung für die Gewährleistung der spezifizierten Konsistenzanforderungen ist die Konvergenz der Replikate. Der Grund dafür ist, daß der Wert eines logischen Datums jederzeit aus der Menge der zugehörigen Replikate ableitbar sein muß — nur so macht die Spezifikation eines tolerierbaren Abstands, wie sie im vorangegangenen Kapitel beschrieben wurde, Sinn.
Richard Lenz
7. Anpassung an das relationale Datenmodell
Zusammenfassung
In diesem Kapitel wird erläutert, in welcher Weise die ASPECT-Spezifikation und die zugehörigen Replikationsprotokolle auf ein relationales Datenbanksystem übertragen werden können. Dazu werden zunächst zur Begriffsklärung die wichtigsten Konstituenten des Relationenmodells und relationaler Datenbanksysteme aufgeführt. Für eine vertiefte Einführung in das Relationenmodell wird allerdings auf die entsprechende Fachliteratur verwiesen (z.B. [Dat94], [LS87], [Mit91]).
Richard Lenz
8. Implementierungsaspekte
Zusammenfassung
In Kapitel 6 wurde eine Vielfalt von Protokollen zur Sicherstellung von ASPECT-Spezifikationen beschrieben. Bei einer konkreten Implementierung sind dementsprechend eine ganze Reihe von Designentscheidungen zu treffen, die sich auf die Adaptierbarkeit und die Leistungsmerkmale des verteilten Datenverwaltungssystems auswirken können. Prinzipiell ist es zwar auch möglich, ein verteiltes DVS so parametrierbar zu gestalten, daß die in einer konkreten Installation zu verwendenden Protokolle für die Sicherstellung bestimmter Konsistenzanforderungen konfigurierbar sind, dies wirkt sich jedoch in der Regel nachteilig auf die Handhabbarkeit des Systems aus und erhöht natürlich den Implementierungsaufwand beträchtlich. Nicht nur bezüglich der zu implementierenden Protokolle, sondern auch bezüglich der spezifizierbaren Konsistenzanforderungen, sind Designentscheidungen zu treffen. Die spezifizierbaren Konsistenzanforderungen werden beim Entwurf der Spezifikationssprache festgelegt ([Che95]). Da die Spezifikationssprache hier nicht näher behandelt wird, wird davon ausgegangen, daß alle in Kapitel 5 beschriebenen Konsistenzanforderungen spezifizierbar sind.
Richard Lenz
9. Zusammenfassung
Zusammenfassung
Durch die zunehmende organisatorische und geographische Dezentralisierung von Unternehmen werden neue Datenverwaltungskonzepte erforderlich, die im Vergleich zu zentralisierten Datenbanksystemen eine bessere Anpassung an die verteilte Unternehmensstruktur ermöglichen. Das wichtigste Mittel zur Erhöhung der Verfügbarkeit und zur Verbesserung der Zugriffszeiten ist dabei die Replikation von Daten. Daten sollen nach Möglichkeit dort bereitgestellt werden, wo sie auch gebraucht werden. Herkömmliche verteilte Datenbanksysteme können den gestellten Anforderungen bislang nicht gerecht werden. Dies liegt daran, daß die Gewährleistung des klassischen Korrektheitskriteriums One-Copy-Serialisierbarkeit für den Zugriff auf replizierte Daten mit einem unverhältnismäßig hohen Synchronisationsaufwand verbunden ist. Die strengen Konsistenzvorschriften, die durch die One-Copy-Serialisierbarkeit impliziert werden, sind allerdings für viele Datenbankanwendungen gar nicht erforderlich. Gesucht ist somit eine adaptive Datenverwaltung, bei der im Zuge einer anwendungsbezogenen Abschwächung von Konsistenzanforderungen eine erhöhte Verfügbarkeit erreicht werden kann. Dabei soll die Anwendungssemantik als Grundlage für die Spezifikation von Konsistenzanforderungen so ausgenutzt werden, daß einerseits ein knotenlokaler Datenzugriff möglichst weitgehend unterstützt und andererseits die erforderliche Synchronisation mit anderen Knoten möglichst weitgehend reduziert wird. Das Ziel ist ein verteiltes Datenverwaltungssystem, das die Konsistenzanforderungen von Datenbankanwendungen kontrolliert.
Richard Lenz
Backmatter
Metadaten
Titel
Adaptive Datenreplikation in verteilten Systemen
verfasst von
Dr. Richard Lenz
Copyright-Jahr
1997
Verlag
Vieweg+Teubner Verlag
Electronic ISBN
978-3-663-09208-7
Print ISBN
978-3-8154-2308-0
DOI
https://doi.org/10.1007/978-3-663-09208-7