Inhaltsverzeichnis:
Definition - Was bedeutet Zwei-Phasen-Commit (2PC)?
Ein zweiphasiges Festschreiben ist ein standardisiertes Protokoll, das sicherstellt, dass ein Datenbankfestschreiben in der Situation implementiert wird, in der ein Festschreibevorgang in zwei separate Teile aufgeteilt werden muss.
In der Datenbankverwaltung wird das Speichern von Datenänderungen als Festschreiben und das Rückgängigmachen von Änderungen als Rollback bezeichnet. Beides kann mit der Transaktionsprotokollierung auf einfache Weise erreicht werden, wenn ein einzelner Server beteiligt ist. Wenn jedoch die Daten beim verteilten Computing auf geografisch unterschiedliche Server verteilt werden (dh wenn jeder Server eine unabhängige Einheit mit separaten Protokolldatensätzen ist), kann der Prozess schwieriger werden .
Techopedia erklärt Two-Phase Commit (2PC)
In einer verteilten Transaktion ist ein spezielles Objekt erforderlich, das als Koordinator bezeichnet wird. Wie der Name schon sagt, organisiert der Koordinator Aktivitäten und die Synchronisierung zwischen verteilten Servern. Das Zwei-Phasen-Commit wird wie folgt implementiert:
Phase 1 - Jeder Server, der Daten festschreiben muss, schreibt seine Datensätze in das Protokoll. Wenn ein Server nicht erfolgreich ist, antwortet er mit einer Fehlermeldung. Bei Erfolg antwortet der Server mit einer OK-Nachricht.
Phase 2 - Diese Phase beginnt, nachdem alle Teilnehmer mit OK geantwortet haben. Anschließend sendet der Koordinator ein Signal mit Festschreibungsanweisungen an jeden Server. Nach dem Festschreiben schreibt jeder die Festschreibung als Teil seines Protokolldatensatzes als Referenz und sendet dem Koordinator eine Nachricht, dass die Festschreibung erfolgreich implementiert wurde. Wenn ein Server ausfällt, sendet der Koordinator Anweisungen an alle Server, um die Transaktion zurückzusetzen. Nach dem Rollback der Server sendet jeder das Feedback, dass dies abgeschlossen wurde.
