- Replizierung
-
Replikation oder Replizierung bezeichnet die mehrfache Speicherung von Daten an typischerweise unterschiedlichen Standorten.
Inhaltsverzeichnis
Grundlagen
Allgemein dient Replikation in der Datenverarbeitung dazu, Daten an mehreren Orten verfügbar zu machen. Dieses dient einerseits zur Datensicherung; andererseits zur Verkürzung der Antwortzeiten, besonders für lesende Datenzugriffe.
Die einfachste Form von Datenreplikation ist die Speicherung einer Kopie einer Datei (
copy
), in erweiterter Form das Kopieren und Einfügen (Copy & Paste) moderner Betriebssysteme.Replikation ist auch die Vervielfältigung optischer Datenträger in einem Presswerk oder mit Hilfe eines Brenners.
Ändernde Datenzugriffe werden im Allgemeinen durch die Replikation aufwändiger. Bei der häufig anzutreffenden Master/Slave-Replikation unterscheidet man zwischen dem „Original“ der Daten (Primärdaten) und den abhängigen Kopien. Bei gleichrangigen Kopien (Versionsverwaltung) muss in der Replikation zu Mergestrategien gegriffen werden, die das Zusammenführen der Datenbestände (Synchronisation) ermöglichen.
Mitunter ist es wichtig zu wissen, welche Aktualität die Replikate besitzen müssen. Je nach Art der Replizierung liegt zwischen der Bearbeitung/Erstellung der Primärdaten und ihrer Replizierung eine gewisse Zeitspanne. Diese Zeitspanne wird als timeliness, meist aber als latency bezeichnet.
Synchrone Replikation
Von synchroner Replikation spricht man, wenn eine Änderungsoperation an einem Datenobjekt nur dann erfolgreich abgeschlossen werden kann, wenn sie auch auf den Replikaten durchgeführt wurde. Um dies technisch umsetzen zu können, ist ein Protokoll zur Gewährleistung der Atomarität (Unteilbarkeit) von Transaktionen anzuwenden, das Commit-Protokoll.
Strategien synchroner Replikation:
- ROWA-Verfahren
- Voting-Verfahren
Beispiele für eine synchrone Replikation sind:
- Warm Standby Replikation von ASE-Sybase-Server Datenbanken
- Hot Standby Replikation von SQL-Server Microsoft Datenbanken
Asynchrone Replikation
Wenn zwischen der Bearbeitung der primären Daten und der Replizierung eine Latenz liegt, spricht man von Asynchronität. Die Daten sind nur zu dem Zeitpunkt der Replikation synchron (identisch).
Eine einfache Variante der asynchronen Replikation ist die „File Transfer Replication“, der Transfer von Dateien via FTP oder SSH.
Die Daten der Replikate stellen also nur eine Momentaufnahme der primären Daten zu einem bestimmten Zeitpunkt dar. Auf Datenbankebene können so in kurzen Zeitintervallen die Transaktionslogs der Datenbanken von einem Server zum anderen transportiert und in die Datenbank eingelesen werden.
Unter Voraussetzung eines intakten Netzwerkes entspricht die latency dann dem Zeitintervall, in dem die Transaktionslogs geschrieben werden.
Strategien asynchroner Replikation:
- Merge-Replikation
- Primary Copy
- Schnappschussreplikation
- Standby-Replikation
Vor- und Nachteile der Replikation
Vorteile von Replikaten in verteilten Datenbanksystemen:
- erhöhte Verfügbarkeit der Daten
- Beschleunigung von Lesezugriffen (bessere Antwortzeiten, Kommunikationseinsparungen)
- bessere Möglichkeiten zur Lastenbalancierung und Query-Optimierung
Nachteile:
- hoher Updateaufwand
- erhöhter Speicherplatzbedarf
- erhöhte Komplexität des Systems
Anwendungsmöglichkeiten
- Data-Warehousing
- Abgleich von Datenbanken in der Groupware
Weblinks
- Synchrone und asynchrone Replizierung im Vergleich – Grundlagenartikel SearchStorage
Wikimedia Foundation.