Computercluster

ROWA-Verfahren

aus Wikipedia, der freien Enzyklopädie

Wechseln zu: Navigation, Suche

Das Read One Write All-Verfahren (engl. lese eins, beschreibe alle) oder ROWA-Verfahren ist ein einfaches Verfahren zur Synchronisation replizierter Daten. Das Prinzip beruht darauf, dass Änderungen an einem Datenobjekt immer synchron auf allen Replikaten durchgeführt werden; eine Änderung kann nur dann erfolgreich sein, wenn sie auch auf allen Replikaten durchgeführt wurde.

Der Vorteil des Verfahrens ist, dass dadurch immer alle Replikate auf dem gleichen Stand sind und keines veraltet ist. Für Leseoperationen ist die Verfügbarkeit eines replizierten Datenobjekts sehr hoch, weil der aktuelle Wert eines Datenobjekts verzögerungsfrei von jedem Replikat abgerufen werden kann. Die Leseverfügbarkeit steigt mit dem Replikationsgrad (Anzahl der Replikate).

Um eine Schreiboperation erfolgreich durchführen zu können müssen alle Replikate erreichbar sein. Je höher der Replikationsgrad ist, um so geringer ist aber die Wahrscheinlichkeit, dass alle Replikate für die Durchführung einer Änderung auch erreichbar sind. Deswegen besitzt das Verfahren nur eine geringe Schreibverfügbarkeit. Darüber hinaus steigt mit dem Replikationsgrad auch der Aufwand für Änderungsoperationen (z.B. die Anzahl der notwendigen Nachrichten).

Abhilfe für das Problem der geringen Schreibverfügbarkeit bringt das ROWAA-Verfahren. Bei ROWAA (Read-One-Write-All-Available) werden nur die tatsächlich verfügbaren Replikate geändert, so dass eine Änderung auch dann erfolgreich durchgeführt werden kann, wenn nicht alle Replikakte erreichbar sind. Für Replikate, die an zwischenzeitlich ausgefallenen Rechnern gespeichert sind, werden die Änderungen protokolliert und bei einem Neustart nachgefahren. Das Verfahren erfordert allerdings einen zusätzlichen Aufwand zur Validierung. Außerdem kann die wechselseitige Konsistenz der Replikate nur bei Rechnerausfällen, nicht aber bei Netzwerkpartitionierungen gewährleistet werden, weil dann in verschiedenen Partitionen Änderungen am gleichen Datenobjekt stattfinden können, die nicht mehr synchronisiert werden können.

Eine weitere Möglichkeit, die Schreibverfügbarkeit zu erhöhen, besteht darin, das ROWA-Verfahren mit sogenannten Votierungsverfahren (z.B. Gewichtetes Votieren oder Quorum Consensus)) zu kombinieren. Beispiele für derartige hybride Verfahren sind "Missing Writes" und "Virtual Partition".

Copyright © 2005-2010 Hardware-Aktuell. Alle Rechte vorbehalten.