Quellen

Übersicht

Datastream kann Änderungen an Daten aus einer lokalen Oracle-Datenbank, einem in der Cloud gehosteten relationalen Oracle-Datenbankdienst (Relational Database Service, RDS) oder einer MySQL-Quelldatenbank abrufen.

Oracle-Quelldatenbank

Dieser Abschnitt enthält Informationen über:

  • Der Umgang von Datastream mit Daten, die aus einer Oracle-Quelldatenbank abgerufen werden
  • Die von Datastream unterstützten Versionen der Oracle-Datenbank
  • Eine Übersicht über das Einrichten einer Oracle-Quelldatenbank, damit Daten daraus an ein Ziel gestreamt werden können
  • Bekannte Einschränkungen bei der Verwendung der Oracle-Datenbank als Quelle

Verhalten

Die Oracle-Datenbank für die Quelle verwendet das Oracle Logminer-Feature, um Änderungen an den Daten aufzuzeigen.

  • Es können alle Schemas oder bestimmte Schemas einer bestimmten Datenbank sowie alle Tabellen der Schemas oder bestimmte Tabellen ausgewählt werden.
  • Alle Verlaufsdaten werden repliziert.
  • Alle DML-Änderungen (Data Manipulation Language, DML) wie Einfügungen, Aktualisierungen und Löschungen aus den angegebenen Datenbanken und Tabellen werden repliziert.
  • Datastream repliziert sowohl Änderungen, für die ein Commit durchgeführt wurde, also auch (in einigen Fällen) Änderungen, für die kein Commit durchgeführt wurde. Datastream liest Änderungen, für die kein Commit durchgeführt wurde. Bei einem Rollback enthalten die Datastream-Ausgabedatensätze auch den umgekehrten Vorgang. Wenn es beispielsweise einen Rollback-Vorgang INSERT gibt, enthalten die Ausgabedatensätze auch einen entsprechenden DELETE-Vorgang. In diesem Fall wird das Ereignis als DELETE-Ereignis angezeigt, das nur ROWID enthält.

Versionen

Datastream unterstützt die folgenden Versionen der Oracle-Datenbank:

  • Oracle 11g, Version 11.2.0.4
  • Oracle 12c, Version 12.1.0.2
  • Oracle 12c, Version 12.2.0.1
  • Oracle 18c
  • Oracle 19c

Einrichtung

Damit Sie eine Oracle-Quelldatenbank so einrichten können, dass Daten aus ihr in ein Ziel gestreamt werden können, muss die Datenbank so konfiguriert werden, dass sie Zugriff gewährt, eine Logging-Funktion einrichtet, eine Aufbewahrungsrichtlinie definiert usw.

Unter Quell-Oracle-Datenbank konfigurieren wird erläutert, wie Sie diese Datenbank so konfigurieren, dass Datastream Daten aus einem Datenbankziel abrufen kann.

Bekannte Einschränkungen

Bekannte Einschränkungen bei Verwendung der Oracle-Datenbank als Quelle:

  • Für Tabellen mit mehr als 100 Millionen Zeilen ist kein Backfill möglich.
  • Streams sind auf 10.000 Tabellen beschränkt.
  • Die mehrmandantenfähige Architektur von Oracle (CDB/PDB) wird nicht unterstützt.
  • Oracle Autonomous Database wird nicht unterstützt.
  • Die SSL-Authentifizierung (Secure Sockets Layer) wird nicht unterstützt.
  • Ereignisse aus Tabellen, die keinen Primärschlüssel haben, enthalten nicht die Informationen, die zum Aktualisieren auf Nutzerseite erforderlich sind.
  • Für Ereignisse gilt eine Größenbeschränkung von 3 MB.
  • Indexbasierte Tabellen (Index-organized Tables, IOTs) werden nicht unterstützt.
  • Temporäre Tabellen werden nicht unterstützt.
  • Bei Spalten vom Typ BFILE wird nur der Pfad zur Datei repliziert. Der Inhalt der Datei wird nicht repliziert.
  • Spalten der Datentypen ANYDATA, BLOB, CLOB, LONG/LONG RAW, NCLOB, UDT, UROWID, XMLTYPE werden nicht unterstützt und werden durch NULL-Werte ersetzt.
  • Bei Oracle 11g werden Tabellen mit Spalten vom Datentyp ANYDATA oder UDT nicht unterstützt und die gesamte Tabelle wird nicht repliziert.
  • Oracle Label Security (OLS) wird nicht repliziert.
  • Datastream ruft das neueste Schema regelmäßig aus der Quelle ab, wenn Ereignisse verarbeitet werden. Wenn sich ein Schema ändert, werden einige Ereignisse aus dem neuen Schema möglicherweise gelesen, während das alte Schema noch angewendet wird. In diesem Fall erkennt Datastream die Schemaänderung, löst einen Schemaabruf aus und verarbeitet die fehlgeschlagenen Ereignisse noch einmal.
  • Nicht alle Änderungen am Quellschema können automatisch erkannt werden. Dies kann zu Datenbeschädigungen führen. Die folgenden Schemaänderungen können zu Datenbeschädigungen oder Fehlern bei der nachgelagerten Verarbeitung der Ereignisse führen:
    • Spalten entfernen
    • Spalten in der Mitte einer Tabelle einfügen
    • Datentyp einer Spalte ändern
    • Spalten neu anordnen
    • Tabellen löschen (relevant, wenn dieselbe Tabelle anschließend mit neuen Daten neu erstellt wird)
    • Tabellen kürzen
  • Datastream unterstützt keine Replikation von Ansichten.
  • Datastream unterstützt materialisierte Ansichten. Für neue Ansichten, die während der Ausführung des Streams erstellt werden, erfolgt jedoch kein automatischer Backfill.

MySQL-Quelldatenbank

Dieser Abschnitt enthält Informationen über:

  • Das Verhalten von Datastream zur Verarbeitung von Daten, die aus einer MySQL-Quelldatenbank abgerufen werden
  • Die von Datastream unterstützten Versionen der MySQL-Datenbank
  • Eine Übersicht über das Einrichten einer MySQL-Quelldatenbank, damit Daten daraus an ein Ziel gestreamt werden können
  • Bekannte Einschränkungen bei Verwendung der MySQL-Datenbank als Quelle

Verhalten

Die MySQL-Quelldatenbank greift auf das Feature Binärlog zurück, um Änderungen an den Daten aufzuzeigen.

  • Es können alle oder nur bestimmte Datenbanken aus einer bestimmten MySQL-Quelle sowie alle Tabellen oder bestimmte Tabellen aus den Datenbanken ausgewählt werden.
  • Alle Verlaufsdaten werden repliziert.
  • Alle DML-Änderungen (Data Manipulation Language, DML) wie Einfügungen, Aktualisierungen und Löschungen aus den angegebenen Datenbanken und Tabellen werden repliziert.
  • Es werden nur Änderungen repliziert, für die ein Commit durchgeführt wurde.

Versionen

Datastream unterstützt die folgenden Versionen von MySQL-Datenbanken:

  • MySQL 5.6
  • MySQL 5.7
  • MySQL 8.0

Datastream unterstützt die folgenden Typen von MySQL-Datenbanken:

  • Selbst gehostetes MySQL
  • Cloud SQL for MySQL
  • Amazon RDS for MySQL
  • Amazon Aurora MySQL
  • MariaDB

Bekannte Einschränkungen

Bekannte Einschränkungen bei Verwendung der MySQL-Datenbank als Quelle

  • Streams sind auf 10.000 Tabellen beschränkt.
  • Für Ereignisse gilt eine Größenbeschränkung von 3 MB.
  • Für Tabellen mit mehr als 100 Millionen Zeilen und ohne numerischen Primärschlüssel kann kein Backfill durchgeführt werden.
  • Für Tabellen, die einen Primärschlüssel haben, der als INVISIBLE definiert ist, kann kein Backfill durchgeführt werden.
  • Datastream ruft das neueste Schema regelmäßig aus der Quelle ab, wenn Ereignisse verarbeitet werden. Wenn sich ein Schema ändert, werden einige Ereignisse aus dem neuen Schema möglicherweise gelesen, während das alte Schema noch angewendet wird. In diesem Fall erkennt Datastream die Schemaänderung, löst einen Schemaabruf aus und verarbeitet die fehlgeschlagenen Ereignisse noch einmal.
  • Nicht alle Änderungen am Quellschema können automatisch erkannt werden. Dies kann zu Datenbeschädigungen führen. Die folgenden Schemaänderungen können zu Datenbeschädigungen oder Fehlern bei der nachgelagerten Verarbeitung der Ereignisse führen:
    • Spalten entfernen
    • Spalten in der Mitte einer Tabelle einfügen
    • Datentyp einer Spalte ändern
    • Spalten neu anordnen
    • Tabellen löschen (relevant, wenn dieselbe Tabelle anschließend mit neuen Daten neu erstellt wird)
    • Tabellen kürzen
  • Datastream unterstützt keine Replikation von Ansichten.
  • Datastream unterstützt keine Spalten vom Datentyp Polygon. Die Werte in diesen Spalten werden durch NULL-Werte ersetzt.
  • Datastream unterstützt den Nullwert (0000-00-00 00:00:00) nicht in Spalten vom Datentyp DATETIME, DATE oder TIMESTAMP. Der Nullwert wird durch den Wert NULL ersetzt.