RDBMS Replikation
• In-Memory Datenbanken vereinen OLAP und OLTP in einem System • Rechenintensive Read-Only OLAP Transaktionen erzeugen die größte Last • Idee für sehr grosse Systeme: lagere diese komplexen Read-Only Transaktionen durch Replikation in eigenes System aus
Replikation
Welche Eigenschaften hat Replikation?
Welche Vorteile bietet Replikation?
Transaktions Wiederholung
Fail-Over`
Fragen: • Wie wird überhaupt festgestellt, dass der Master ausgefallen ist? • Welche Replika soll übernehmen? • Wie wird sichergestellt, dass der neue Master den letzten Stand hat?
Schritt 1: Commits von Client an
Replikas durchreichen
Schritt 2: Bestätigung von Replikas an Master
Schritt 3: Bestätigung von Master an Clients
Schritt 4: Ausstehende Acknowledges einholen
Fail-Over Steuerung
Vor-/Nachteile
Real Application Cluster
Vorteile
Vorteile:
• Übernahme der Funktionalität bei Ausfall eines Servers ohne administrativen
Eingriff
• Geringer Zeitaufwand für Wiederanlauf
o Client-Reconnect (erneute Verbindungsaufnahme zur Datenbank über einen anderen Datenbankserver im Cluster)
erfolgt für den Anwender bzw. die Applikation
o SELECT-Statements läuft transparent und innerhalb einiger (Mill-) Sekunden auf Ersatzknoten
• Komplette Hardware kann - anders als beim Fail-Over Cluster - auch während des
Normalbetriebs genutzt werden.
• Parallelisierung über alle Clusterknoten hinweg realisierbar
• Dynamische Zuordnung von Datenbank Services möglich
• Kompensation eines Rechenzentrumsverlustes, wenn der RAC und sein Shared
Media entsprechend verteilt wurde („Stretched Cluster“, bis ca. 2000 m)
Vor-/Nachteile
Real Application Cluster
Nachteile:
Nachteile:
• Stretching des Clusters über ca. 2000 m nicht mehr möglich (Latenzprobleme).
• Bei Ausfall des gesamten Rechenzentrums fällt der gesamte Cluster aus.
→ Remote Standby-Datenbank (Oracle Real Application Cluster)
• Kein oder nur eingeschränktes Abfangen von logischen Korruptionen möglich
→ zeitverzögerte Stand-By Datenbank
• Wenn eine Instanz ausfällt, ist die ganze Datenbank nicht verfügbar, und zwar
solange, bis das GRD (Global Resource Directory) neu gestartet wurde
• Werden zur gleichen Zeit bzw. kurz aufeinander folgend auf mehreren Instanzen
des Clusters Daten angefordert, die in denselben Datenbank-Blöcken liegen, so
werden diese zwischen den Buffer-Caches der betroffenen Instanzen transferiert.
→ Gefahr dass die Datenbank sich nur damit beschäftigt, die Blöcke hin und her zu
schieben.