Oracle Streams - flexible Datenreplikation


Oracle Streams ist ein build-in Feature welches ohne zusätzliche Lizenzkosten eine extrem flexible Möglichkeit der Datenreplikation bietet. Beim Einsatz von asyncronem Downstream Capture erfolgt dies ohne Belastung der Resourcen der Primären Datenbank.


Überblick

Oracle Streams stellt eine performante und flexible Möglichkeit der Replikation von Daten dar. Dabei werden über einen Capture-Mechanismus Daten aus den Redo Logs des Quellsystems ausgelesen und über ein Apply-Mechanismus in die Zieldatenbank eingearbeitet. Es können sowohl DML als auch DDL Statements gestreamed werden. Für eine minimale Auswirkung auf das Quellsystem empfiehlt sich der Einsatz von downstream Capture.

Downstream Capture

Beim Downstream Capture werden die Redo Log Informationen aus den Logfiles auf der Zielmaschine in LCR's (Logical Change Records) durch einen oder mehrere Capture-Prozesse übersetzt.



Es werden folgende Arten des Downstream Captures unterschieden:

Downstream Capture
Die Quelldatenbak sendet online / archive Redo Logs an den Downstream Capture Prozess der Zieldatenbank
Realtime Downstream Capture
Die Quell DB sendet online / archive Redo Logs an den Downstream Capture Prozess in der Zieldatenbank. Dabei können die online Redo Informationen synchronous oder asynchronous übertragen werden. Der Log Apply Service (LAS) der Quelldatenbank überträgt dabei die Loginformation an den Remote File Server (RFS) der Zieldatenbank. Das Verhalten wird über die Parameter LGWR SYNC oder LGWR ASYNC für LOG_ARCHIVE_DEST_n gesteuert.
Archived-Log Downstream Capture
Dabei werden nur die Archivied Logs übertragen. Die Zielseite wird also nur nach einem Logswitch aktualisiert

Durch den Einsatz von Realtie Downsteam Capture (asyncron) erhält man einen guten Schutz vor Datenverlußt und benötigt auf der Quelldatenbank keine weiteren Resourcen. Da es sich um eine Logische Replikation handelt können Strukturen (z.b. Partitionen) auf Ziel- und Quelldatenbanken unterschiedlich sein. So können zum Beispiel historische Daten auf dem Zielsystem länger vorgehalten werden während diese im Quellsystem bereits gelöscht wurden

Golden Gate

Mit Golden Gate bietet Oracle ein kostenpflichtiges Zusatzmodul zur Replikation an, welches gegenüber Streams einige Vorteile bietet:

  • Konfiguration über Konfig-Files, diese ist wesentlich einfacher als Streams
  • Unterstützt heterogene Systeme und Datenbanken
  • Einfache Konfiguration von Transformationen
  • Bessere Performance als Streams unter bestimmten Bedingunen

Oracle selber nennt Golden Gate die 'strategische' Replikationslösung. Sollte sich an dieser Vorgabe nichts ändern ist mit keinen deutlichen Weiterentwicklungen bei Streams zu rechnen. Allerdings hat Oracle auch zugesagt Streams weiterhin zu unterstützen.