2PC
2PC
2PC ist eine Abkürzung für Two Phase Commit.
Methode um in einem Netzwerk Transaktionen abzuschliessen.
Bücher zum Thema bei Amazon.de
Das Two Phase Commit Protokoll wird in
Transaktionsmonitoren und
Datenbanken verwendet um einen konsistenten Zustand der Daten zu garantieren.
Dabei werden Datenänderungen zuerst nur temporär gemacht (temporary commit). Erst wenn dieser Vorgang erfolgreich war, werden die Änderungen übernommen.
Der
Algorithmus kommt vor allem in verteilten
Netzwerken zur Anwendung, bei denen alle
Nodes die Änderung übernehmen müssen oder die Aktion verwerfen.
Hierbei gibt es einen Koordinator, von dem die Änderung ausgeht. Die restlichen Nodes heissen Kohorte.
Der Ablauf ist im Wesentlichen folgender:
- Der Koordinator schliesst seine lokale Transaktion ab, die an die anderen Nodes weitergegeben werden müssen.
- Der Koordinator gibt die Änderungen an die Nodes weiter, jeder Node bestätigt die erfolgreiche (temporäre) Eintragung (Commit-request phase)
- Wenn alle Nodes Erfolg vermelden, gibt der Koordinator den Befehl, die Änderungen zu übernehmen. Erst wenn alle auch hierbei Erfolg vermelden, trägt er die Änderung selbst ein. (Commit phase)