Freitag, 11. März 2016

Höhere Performance mit Data Guard Fast Sync

Mit der Version 12c der Oracle Datenbank hat Oracle im Bereich des Protection Modes Maximum Availability einen weiteren Schalter eingebaut, der die Paketumlaufzeit (RTT – Round Trip Time) zwischen der Primär-Datenbank und dem Standby-System verkürzt. Damit konnte der Weg für Standby-Szenarien, die bisher aus Performance Gründen im asynchronen Modus betrieben werden mussten, in Richtung des synchronen Modus‘ geebnet werden.

Situation bis einschließlich Oracle 11gR2


Beim Betrieb der Data Guard – Konfiguration im Maximum Availability – Mode, der eine ausgewogene Mischung aus hohem Schutz des Datenbestandes und der Verfügbarkeit der Primärdatenbank bietet, bestand der Paketumlauf im synchronem Abgleich aus den folgenden 6 Schritten:

Beteiligte Hintergrundprozesse: LGWR=Log Writer; NSS=Network Server SYNC; RFS=Remote File Server

Dabei konnte gerade bei hoch-transaktionellen Systemen das Schreiben von Standby Redo Logs durch den RFS-Prozess (Schritt 4) je nach Menge der zu verarbeitenden Daten und der Geschwindigkeit des Dateisystems und der Datenträger zu Verzögerungen führen und so das Commit Acknowledge auf der Applikationsseite verzögern. In diesen Fällen wurde dann meistens auf den asynchronen Maximum Performance – Mode ausgewichen.

Fast Sync mit Oracle 12c


Seit der Einführung der Version 12c der Oracle Datenbank steht Ihnen bei der Definition des Parameters LOG_ARCHIVE_DEST_n das Attribut SYNC/NOAFFIRM zur Verfügung. Dieses Attribut bewirkt eine Änderung des Paketumlaufs im synchronem Abgleich:

Beteiligte Hintergrundprozesse: LGWR=Log Writer; NSS=Network Server SYNC; RFS=Remote File Server

Bei genaueren Hinsehen fällt auf, dass der Standby-Server den Erhalt der Daten quittiert, sobald diese in seiner SGA (Schritt 3 und Schritt 4) angekommen sind und erst dann diese Änderungen auf dem Datei-System festschreibt (Schritt 6). Dies kann bei hoch-transaktionellen Systemen zu großen Performance-Vorteilen führen und den Einsatz des Maximum Availability – Modes ermöglichen, wo bisher nur der Maximum Performance – Mode zum Einsatz kommen konnte.

Fast Sync aktivieren


Um die Fast Sync – Funktionalität zu aktivieren müssen Sie lediglich den Parameter LOG_ARCHIVE_DEST_n um das Attribut SYNC/NOAFFIRM erweitern:

LOG_ARCHIVE_DEST_3='SERVICE=stby1 SYNC NOAFFIRM'

SYNC/AFFIRM vs. SYNC/NOAFFIRM


Vor dem Einsatz von Data Guard Fast Sync sollten Sie sich nochmal die Auswirkung dieser beiden Attribute im Katastrophenfall vor Augen halten.

Bei einer Standby-Datenbank, die mit SYNC/AFFIRM betrieben wird, wird mit dem Commit Acknowledge das Festschreiben der Daten auf der Festplatte des Standby-Systems bestätigt. Damit stehen Ihnen die Daten selbst nach dem Crash des Standby-Systems zur Verfügung.

Anders verhält sich die Situation beim Einsatz des Attributs SYNC/NOAFFIRM. Hier wird bewusst auf die Prüfung des Festschreibens auf der Festplatte verzichtet. Damit kann es, falls zur gleichen Zeit das Primär-System zerstört wird und das Standby-System abstürzt, zu einem Datenverlust kommen.

Nichtsdestotrotz bietet der Einsatz von Data Guard Fast Sync einen deutlich höheren Schutz für Systeme, die bisher asynchron betrieben werden mussten, und eine höhere Performance für Systeme, die bisher mit SYNC/AFFIRM betrieben wurden.

Lizenzierung


Fast Sync ist ein Feature von Data Guard und ist damit mit der Oracle Database Enterprise Edition korrekt lizenziert. Eine separate Active Data Guard – Lizenz wird nicht benötigt.

Keine Kommentare:

Kommentar veröffentlichen