oracle-consulting.de

Oracle Streams - flexible Datenreplikation

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

Hinweis zum Stand der Technik: Oracle Streams wurde mit Oracle Database 12c Release 1 abgekündigt. Oracle Database 18c war das letzte Release mit Streams-Unterstützung; ab 19c ist die Funktion entfernt. Für neue Replikationsvorhaben ist Oracle GoldenGate die strategische Lösung. Diese Seite bleibt als Referenz für Bestandssysteme bestehen — bei deren Betrieb und Ablösung unterstützen wir Sie.

Ü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 gestreamt 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.

Aufbau eines Downstream-Capture-Prozesses bei Oracle Streams

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 (asynchron) erhält man einen guten Schutz vor Datenverlußt und benötigt auf der Quelldatenbank keine weiteren Ressourcen. 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.