Replikation

Aus GISpunkt HSR
Wechseln zu: Navigation, Suche

Replikation (Datenverarbeitung) oder Replizierung bezeichnet die mehrfache Speicherung von Daten an unterschiedlichen Standorten.

Siehe auch

Was ist Replikation?

Replikation dient einerseits zur Datensicherung; andererseits der Performanz, d.h. der Verkürzung Antwortzeiten, besonders für lesende Datenzugriffe.

Es gibt verschiedene Gründe und Vorteile für die Replikation:

  • Verfügbarkeit
  • Performance
  • Disconnected Computing (z.B. für Mobiles)
Verwandte Konzepte zur Replikation
Bei der Versionsverwaltung (Verwaltung gleichrangiger Kopien) müssen Merge-Strategien angewendet werden (siehe unten). Replikatin ist ein Spezialfall von verteilten Systemen: Bei verteilten Datenbanken können verschiedene Daten an verschiedenen Orten sein, im Gegensatz zur Replikation, bei der dieselben Daten - oder ein Teil davon - an verschiedenen Orten verwaltet werden.
Nur lesende oder lesende & schreibende Zugriffe
Ändernde Datenzugriffe machen für die Replikation im Allgemeinen aufwändiger. Bei der häufig anzutreffenden Master/Slave-Replikation unterscheidet man zwischen dem „Original“ der Daten (Primärdaten) und den abhängigen Kopien. Man unterscheidet daher Single Master, bei der Änderungen nur von einem einzigen Master akzeptiert werden, und Multi-Master.
Häufigkeit
Zunächst muss bestimmt werden, welche Datenbankobjekte wie häufig sie repliziert werden müssen.
Aktualität
Es ist auch wichtig zu wissen, welche Aktualität die Replikate besitzen müssen. Die Zeitspanne zwischen der Bearbeitung/Erstellung der Primärdaten und ihrer Replizierung wird als timeliness, meist aber als latency bezeichnet. Damit verknüpft ist die Unterscheidung zwischen synchroner und asynchroner Replikation:
  • Synchrone Replikation: Bei synchroner Replikation werden Änderungsoperationen an einem Datenobjekt nur dann erfolgreich abgeschlossen, wenn sie auch auf den Replikaten durchgeführt wurden (vgl. Atomarität (Unteilbarkeit) von Transaktionen, Commit-Protokoll). Hot Standby Replikation von MS SQL-Server ist ein Beispiel dafür.
  • Asynchrone Replikation: Bei der asynchronen Replikation liegt zwischen der Bearbeitung der primären Daten und der Replizierung eine Latenz. 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. Strategien asynchroner Replikation sind Merge-Replikation, Primary Copy, Snapshot-Replikation und Standby-Replikation. Die Vorteile der Commit-Protokoll werden erkauft durch einen hohen Updateaufwand, erhöhter Speicherplatzbedarf und v.a. dem Problem, dass Konflikte entstehen können, die im schlimmsten Fall nur durch manuellen Eingriff gelöst werden können.

Replikation auf Betriebssystem- und Hardware-Ebene

Über Treiber oder Hardware (disk array controller) werden Blocks devices in aktive und in Echtzeit an verschiedene physische Harddisks verteilt. Das File system "merkt" davon nichts und muss nicht konfiguriert werden. Eine tyische Methode, wenn die Harddisks direkt miteinander verbindbar sind, ist Disk mirroring.

Weblinks / Quellen

  • Replikation in PostgreSQL