Synchrone Replikation
Synchrone Replikation ist der Vorgang des Kopierens von Daten über ein Storage Area Network, Local Area Network oder Wide Area Network, sodass mehrere aktuelle Kopien der Daten über das System verteilt sind.
Die synchrone Replikation wird hauptsächlich für High-End-Transaktionsanwendungen verwendet, die ein sofortiges Failover benötigen, wenn der primäre Knoten ausfällt. Es ist weniger häufig im Zusammenhang mit Network Attached Storage anzutreffen, es sei denn, das NAS-Gerät kann auch als Blockspeicher für diese High-End-Transaktionsanwendungen fungieren.
Die Synchrone Replikation ist die bevorzugte Methode für Anwendungen mit kurzen Fristen für die Wiederherstellung bevorzugt, die Datenverluste nicht tolerieren können.
Die Technik hat ihre Nachteile. Sie ist teurer als andere Formen der Datenreplikation. Da sie außerdem die Latenz erhöht, funktioniert sie nur für Entfernungen bis zu 300 km.
Synchrone Replikation versus asynchrone Replikation
synchrone Replikation schreibt Daten gleichzeitig in den Primärspeicher und in das Replikat. Auf diese Weise bleiben die beiden Versionen immer synchronisiert. Asynchrone Replikation schreibt Daten zuerst in den primären Speicher und kopiert sie dann in das Replikat, sodass es eine Verzögerung gibt, bis die Daten an einen sekundären Standort kopiert werden.
Obwohl Array-, Netzwerk- und Host-basierten Replikationsprodukte die asynchrone Replikation in den meisten Fällen unterstützen, ist die synchrone Replikation der Standard für blockbasierte Speicherarrays. Außerdem setzen die meisten Netzwerkbasierten Replikationssysteme auf diese Methode.
Bei beiden Varianten sendet ein Speicher-Array an Standort A eine Bestätigung der Transaktion an den Host an Standort A. Die beiden Techniken unterscheiden sich in der Reihenfolge der Ereignisse, die stattfinden, nachdem der Host die Transaktion an das lokale Speicher-Array gesendet hat.
Bei der asynchronen Replikation geschieht Folgendes:
- Der Host an Standort A sendet eine Schreibtransaktion an das Speicherarray von Standort A.
- Das Speicher-Array von Standort A sendet die Transaktion an den Cache und eine Bestätigung an den Host.
- Das Speicher-Array von Standort A sendet das Update nach einer Verzögerung an das Speicher-Array von Standort B.
- Das Speicher-Array von Standort B sendet eine Bestätigung an das Speicher-Array von Standort A.
Bei der synchronen Replikation sendet der Host genau wie bei der asynchronen Replikation von Standort A eine Schreibtransaktion an das Speicherarray von Standort A. Bei der synchronen Replikation unterscheiden sich die nächsten Schritte im Prozess jedoch wie folgt:
- Speicher-Array von Standort A schreibt die Transaktion in den Cache und sendet die Aktualisierung zeitgleich an das Speicher-Array von Standort B.
- Das Speicher-Array von Standort B sendet eine Bestätigung zurück an das Speicher-Array von Standort A.
- Das Speicher-Array von Standort A sendet eine Bestätigung an den Host.
Bei der synchronen Replikation verarbeiten beide Arrays die Transaktion, bevor eine Bestätigung an den Host gesendet wird, was bedeutet, dass die Arrays immer synchron sind. Bei der asynchronen Replikation befindet sich das sekundäre Speicherarray normalerweise einige Transaktionen hinter dem primären Array.
Wenn die Entfernung zwischen primärem und sekundärem Rechenzentrum zu groß ist, kann die Bestätigungsverzögerung durch die synchrone Replikation es für einige Anwendungen unbrauchbar machen.