Datenpipelines in Autonomous Database
Load-Pipelines bieten kontinuierliches inkrementelles Laden von Daten aus externen Quellen (wenn Daten im Objektspeicher ankommen, wird sie in eine Datenbanktabelle geladen). Exportpipelines ermöglichen den kontinuierlichen inkrementellen Datenexport in den Objektspeicher (da neue Daten in einer Datenbanktabelle angezeigt werden, wird sie in den Objektspeicher exportiert). Pipelines verwenden den Datenbank-Scheduler, um kontinuierlich inkrementelle Daten zu laden oder zu exportieren.
Autonomous Database-Datenpipelines bieten Folgendes:
-
Einheitliche Vorgänge: Mit Pipelines können Sie Daten schnell und einfach laden oder exportieren und diese Vorgänge in regelmäßigen Abständen für neue Daten wiederholen. Das Package
DBMS_CLOUD_PIPELINE
stellt ein einheitliches Set von PL/SQL-Prozeduren für die Pipelinekonfiguration sowie zum Erstellen und Starten eines geplanten Jobs für Lade- oder Exportvorgänge bereit. -
Geplante Datenverarbeitung: Pipelines überwachen ihre Datenquelle und laden oder exportieren die Daten regelmäßig, wenn neue Daten eintreffen.
-
High Performance: Pipelines skalieren Datenübertragungsvorgänge mit den verfügbaren Ressourcen in Autonomous Database. Pipelines verwenden standardmäßig Parallelität für alle Lade- oder Exportvorgänge und skalieren basierend auf den in Autonomous Database verfügbaren CPU-Ressourcen oder basierend auf einem konfigurierbaren Prioritätsattribut.
-
Atomizität und Recovery: Pipelines garantieren die Atomizität, sodass Dateien im Objektspeicher genau einmal für eine Ladepipeline geladen werden.
-
Überwachung und Fehlerbehebung: Pipelines bieten detaillierte Log- und Statustabellen, mit denen Sie Pipelinevorgänge überwachen und debuggen können.
- Multicloud-kompatibel: Pipelines in Autonomous Database unterstützen den einfachen Wechsel zwischen Cloud-Providern ohne Anwendungsänderungen. Pipelines unterstützen alle Zugangsdaten- und Objektspeicher-URI-Formate, die Autonomous Database unterstützt (Oracle Cloud Infrastructure Object Storage-, Amazon S3-, Azure Blob Storage-, Google Cloud Storage- und Amazon S3-Compatible-Objektspeicher).
Verwandte Themen
Datenpipeline-Lebenszyklus
Das Package DBMS_CLOUD_PIPELINE
stellt Prozeduren zum Erstellen, Konfigurieren, Testen und Starten einer Pipeline bereit. Der Pipeline-Lebenszyklus und die Verfahren sind für Lade- und Exportpipelines identisch.

Beschreibung der Abbildung pipeline_lifecycle.eps
Führen Sie für jeden Pipelinetyp die folgenden Schritte aus, um eine Pipeline zu erstellen und zu verwenden:
-
Erstellen und konfigurieren Sie die Pipeline. Weitere Informationen finden Sie unter Pipelines erstellen und konfigurieren.
-
Testen Sie eine neue Pipeline. Weitere Informationen finden Sie unter Pipelines testen.
-
Starten Sie eine Pipeline. Weitere Informationen finden Sie unter Pipeline starten.
Darüber hinaus können Sie Pipelines überwachen, stoppen oder löschen:
-
Während eine Pipeline ausgeführt wird, entweder während des Tests oder während der regulären Verwendung, nachdem Sie die Pipeline gestartet haben, können Sie die Pipeline überwachen. Weitere Informationen finden Sie unter Pipelines überwachen und Fehler beheben.
-
Sie können eine Pipeline stoppen und später erneut starten oder eine Pipeline löschen, wenn Sie mit der Pipeline fertig sind. Weitere Informationen finden Sie unter Pipeline stoppen und Pipeline löschen.
Pipelines laden
Eine Load Pipeline funktioniert wie folgt (einige dieser Features können mit Pipelineattributen konfiguriert werden):
-
Objektspeicherdateien werden parallel in eine Datenbanktabelle geladen.
- Eine Load-Pipeline verwendet den Namen der Objektspeicherdatei, um neuere Dateien eindeutig zu identifizieren und zu laden.
- Wenn eine Datei im Objektspeicher in die Datenbanktabelle geladen wurde und sich der Dateiinhalt im Objektspeicher ändert, wird sie nicht erneut geladen.
- Wenn die Objektspeicherdatei gelöscht wird, wirkt sich dies nicht auf die Daten in der Datenbanktabelle aus.
-
Wenn Fehler auftreten, wiederholt eine Ladepipeline den Vorgang automatisch. Wiederholungen werden bei jeder nachfolgenden Ausführung des geplanten Jobs der Pipeline versucht.
-
Wenn die Daten in einer Datei nicht mit der Datenbanktabelle konform sind, wird sie als
FAILED
markiert und kann geprüft werden, um das Problem zu debuggen und zu beheben.- Wenn eine Datei nicht geladen werden kann, wird die Pipeline nicht gestoppt, und die anderen Dateien werden weiterhin geladen.
-
Load-Pipelines unterstützen mehrere Eingabedateiformate, einschließlich: JSON, CSV, XML, Avro, ORC und Parquet.

Beschreibung der Abbildung load-pipeline.eps
Die Migration von Nicht-Oracle-Datenbanken ist ein möglicher Anwendungsfall für eine Ladepipeline. Wenn Sie Ihre Daten von einer Nicht-Oracle-Datenbank zu Oracle Autonomous Database on Dedicated Exadata Infrastructure migrieren müssen, können Sie die Daten extrahieren und in Autonomous Database laden (Oracle Data Pump-Format kann nicht für Migrationen aus Nicht-Oracle-Datenbanken verwendet werden). Mit einem generischen Dateiformat wie CSV zum Exportieren von Daten aus einer Nicht-Oracle-Datenbank können Sie Ihre Daten in Dateien speichern und die Dateien in den Objektspeicher hochladen. Erstellen Sie als Nächstes eine Pipeline, um die Daten in Autonomous Database zu laden. Die Verwendung einer Ladepipeline zum Laden einer großen Gruppe von CSV-Dateien bietet wichtige Vorteile wie Fehlertoleranz sowie Wiederaufnahme- und Wiederholungsvorgänge. Bei einer Migration mit einem großen Dataset können Sie mehrere Pipelines erstellen, eine pro Tabelle für die Nicht-Oracle-Datenbankdateien, um Daten in Autonomous Database zu laden.
Pipelines exportieren
Verwenden Sie eine Exportpipeline für den kontinuierlichen inkrementellen Export von Daten aus der Datenbank in den Objektspeicher. Eine Exportpipeline identifiziert in regelmäßigen Abständen Kandidatendaten und lädt die Daten in den Objektspeicher hoch.
Es gibt drei Exportpipelineoptionen (die Exportoptionen können mit Pipelineattributen konfiguriert werden):
-
Exportieren Sie inkrementelle Ergebnisse einer Abfrage in den Objektspeicher mit einer Datums- oder Zeitstempelspalte als Schlüssel zum Verfolgen neuerer Daten.
-
Exportieren Sie inkrementelle Daten einer Tabelle in den Objektspeicher mit einer Datums- oder Zeitstempelspalte als Schlüssel zum Verfolgen neuerer Daten.
-
Exportieren Sie Daten einer Tabelle in den Objektspeicher mit einer Abfrage, um Daten ohne Referenz auf eine Datums- oder Zeitstempelspalte auszuwählen (damit die Pipeline alle Daten exportiert, die von der Abfrage für jede Scheduler-Ausführung ausgewählt werden).
Exportpipelines verfügen über die folgenden Features (einige davon können mit Pipelineattributen konfiguriert werden):
-
Ergebnisse werden parallel zum Objektspeicher exportiert.
-
Bei Fehlern wiederholt ein nachfolgender Pipelinejob den Exportvorgang.
-
Exportpipelines unterstützen mehrere Exportdateiformate, darunter: CSV, JSON, Parquet oder XML.
Von Oracle verwaltete Pipelines
Autonomous Database on Dedicated Exadata Infrastructure stellt integrierte Pipelines bereit, um bestimmte Logs im JSON-Format in einen Objektspeicher zu exportieren. Diese Pipelines sind vorkonfiguriert und werden gestartet und gehören dem ADMIN-Benutzer.
Die von Oracle verwalteten Pipelines sind:
-
ORA$AUDIT_EXPORT
: Diese Pipeline exportiert die Datenbankauditlogs im JSON-Format in den Objektspeicher und wird alle 15 Minuten nach dem Starten der Pipeline ausgeführt (basierend auf dem Attributwertinterval
). -
ORA$APEX_ACTIVITY_EXPORT
: Diese Pipeline exportiert das Oracle APEX-Workspace-Aktivitätslog im JSON-Format in den Objektspeicher. Diese Pipeline ist mit der SQL-Abfrage zum Abrufen von APEX-Aktivitätsdatensätzen vorkonfiguriert und wird alle 15 Minuten nach dem Starten der Pipeline ausgeführt (basierend auf dem Attributwertinterval
).
So konfigurieren und starten Sie eine von Oracle verwaltete Pipeline: