Pipelines erstellen und konfigurieren
Sie können eine oder mehrere Lade- oder Exportpipelines erstellen. Beim Erstellen einer Pipeline verwenden Sie Parameter und legen Pipelineattribute fest, um die Pipeline zu konfigurieren.
Die Optionen zum Erstellen und Konfigurieren einer Pipeline lauten wie folgt:
-
Pipeline laden:
-
Pipeline exportieren:
-
Exportieren Sie inkrementelle Ergebnisse einer Abfrage in den Objektspeicher, indem Sie eine Datums- oder Zeitstempelspalte als Schlüssel für die Verfolgung neuerer Daten verwenden. Siehe Pipeline zum Exportieren mit Zeitstempelspalte erstellen und konfigurieren.
-
Exportieren Sie inkrementelle Daten einer Tabelle in den Objektspeicher, indem Sie eine Datums- oder Zeitstempelspalte als Schlüssel für die Verfolgung neuerer Daten verwenden. Informationen hierzu finden Sie unter Pipeline zum Exportieren mit Zeitstempelspalte erstellen und konfigurieren.
-
Exportieren Sie Daten einer Tabelle in einen Objektspeicher mit einer Abfrage, um Daten ohne Referenz auf eine Datums- oder Zeitstempelspalte auszuwählen (so dass die Pipeline alle Daten exportiert, die von der Abfrage für jede Scheduler-Ausführung ausgewählt werden). Informationen hierzu finden Sie unter Pipeline zum Exportieren von Abfrageergebnissen (ohne Zeitstempel) erstellen und konfigurieren.
-
Pipeline zum Laden von Daten erstellen und konfigurieren
Sie können eine Pipeline erstellen, um Daten aus externen Dateien im Objektspeicher oder Verzeichnisse in Tabellen in der autonomen KI-Datenbank zu laden.
Eine Ladepipeline verbraucht Daten, die im Objektspeicher oder in Verzeichnissen gespeichert sind, und lädt sie in eine Tabelle in der autonomen KI-Datenbank. Wenn Sie eine Ladepipeline erstellen, wird die Pipeline in regelmäßigen Abständen ausgeführt, um Daten zu konsumieren, die am Quellspeicherort platziert wurden. Wenn neue Datendateien ankommen, lädt die Pipeline die neuen Daten. Sie können auch eine Pipeline verwenden, um Dateien mit Lebenslauf- und Wiederholungsfunktionen zuverlässig vom Quellspeicherort in eine Tabelle in der Datenbank zu kopieren.
Bei einer Ladepipeline verwendet das Pipelinepackage DBMS_CLOUD.COPY_DATA, um Daten zu laden.
Verwenden Sie in Ihrer autonomen KI-Datenbank entweder eine vorhandene Tabelle, oder erstellen Sie die Datenbanktabelle, in die Sie Daten laden. Beispiel:
CREATE TABLE EMPLOYEE
(name VARCHAR2(128),
age NUMBER,
salary NUMBER);
- Pipeline zum Laden von Daten aus dem Objektspeicher oder aus Directory-Objekten erstellen
BEGIN DBMS_CLOUD_PIPELINE.CREATE_PIPELINE( pipeline_name => 'MY_PIPE1', pipeline_type => 'LOAD', description => 'Load metrics from object store into a table' ); END; /Weitere Informationen finden Sie unter Prozedur CREATE_PIPELINE.
-
Erstellen Sie ein Zugangsdatenobjekt, um auf den Objektspeicher zuzugreifen, der die Dateien enthält, die Sie laden.
Sie geben die Zugangsdaten für den Pipelinequellspeicherort mit dem Attribut
credential_namean. Wenn Sie im nächsten Schritt keinecredential_nameangeben, wird der Wert fürcredential_nameaufNULLgesetzt. Sie können den StandardwertNULLverwenden, wenn das Attributlocationeine öffentliche oder vorab authentifizierte URL ist.Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.
-
Legen Sie die Pipelineattribute fest, einschließlich der erforderlichen Attribute:
location,table_nameundformat.Fall 1: Erstellen Sie eine Pipeline zum Laden von Daten aus dem Objektspeicher.
BEGIN DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE( pipeline_name => 'MY_PIPE1', attributes => JSON_OBJECT( 'credential_name' VALUE 'OBJECT_STORE_CRED', 'location' VALUE 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/', 'table_name' VALUE 'employee', 'format' VALUE '{"type":"json", "columnpath":["$.NAME", "$.AGE", "$.SALARY"]}', 'priority' VALUE 'HIGH', 'interval' VALUE '20') ); END; /Fall 2: Pipeline zum Laden von Daten aus Directory-Objekten erstellen
BEGIN DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE( pipeline_name => 'MY_PIPE1', pipeline_type => 'LOAD', attributes => JSON_OBJECT( 'location' VALUE 'MY_DIR:*.csv', 'table_name' VALUE 'employee', 'format' VALUE '{"type":"csv"}', 'priority' VALUE 'HIGH', 'interval' VALUE '20') ); END; /Die folgenden Attribute müssen festgelegt werden, um eine Ladepipeline in beiden Fällen auszuführen:
-
location: Gibt den Speicherort der Quelldatei im Objektspeicher oder Verzeichnisobjekt an. -
table_name: Gibt die Tabelle in der Datenbank an, in der Sie Daten laden. Die angegebenelocationgilt für einetable_namepro Pipeline. -
format: Beschreibt das Format der Daten, die Sie laden.Weitere Informationen finden Sie unter Optionen für DBMS_CLOUD-Packageformat.
credential_namesind die Zugangsdaten, die Sie im vorherigen Schritt erstellt haben.Der Wert
prioritybestimmt die Anzahl der Dateien, die parallel geladen werden. Eine Pipeline mit einer höheren Priorität verbraucht mehr Datenbankressourcen und führt jede Ausführung schneller aus als die Ausführung mit einer niedrigeren Priorität.Der Wert
intervalgibt das Zeitintervall in Minuten zwischen aufeinanderfolgenden Ausführungen eines Pipelinejobs an. Der Standardwert fürintervalbeträgt 15 Minuten.Weitere Informationen zu den Pipelineattributen finden Sie unter DBMS_CLOUD_PIPELINE-Attribute.
-
-
Nachdem Sie eine Pipeline erstellt haben, können Sie die Pipeline testen oder starten:
Alternativ können Sie das folgende Format verwenden, um das Format für JSON festzulegen:
BEGIN
DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE(
pipeline_name => 'MY_PIPE1',
attribute_name => 'format',
attribute_value => JSON_OBJECT('type' value 'json', 'columnpath' value '["$.NAME", "$.AGE", "$.SALARY"]')
);
END;
/
Pipeline zum Exportieren mit Zeitstempelspalte erstellen und konfigurieren
Sie können eine Exportpipeline erstellen, um Zeitreihendaten automatisch aus Ihrer autonomen KI-Datenbank in den Objektspeicher zu exportieren.
Mit dieser Exportpipelineoption geben Sie eine Tabelle oder SQL-Abfrage und eine Spalte mit einem Zeitstempel an, mit dem die Pipeline den Zeitpunkt des letzten Uploads verfolgt. Mit einer Exportpipeline können Sie Daten für die Nutzung durch andere Anwendungen freigeben oder Daten im Objektspeicher speichern.
Bei einer Exportpipeline verwendet das Pipelinepackage DBMS_CLOUD.EXPORT_DATA, um Daten zu exportieren.
Eine Exportpipeline exportiert Daten aus Ihrer autonomen KI-Datenbank in den Objektspeicher. Wenn Sie eine Exportpipeline erstellen, wird die Pipeline in regelmäßigen Abständen ausgeführt und platziert Daten im Objektspeicher.
-
Pipeline zum Exportieren von Daten in den Objektspeicher erstellen
BEGIN DBMS_CLOUD_PIPELINE.CREATE_PIPELINE( pipeline_name=>'EXP_PIPE1', pipeline_type=>'EXPORT', description=>'Export time series metrics to object store'); END; /Weitere Informationen finden Sie unter Prozedur CREATE_PIPELINE.
-
Erstellen Sie ein Zugangsdatenobjekt, um auf den Speicherort des Zielobjektspeichers zuzugreifen, in den Sie Datendateien exportieren.
Sie geben die Zugangsdaten für den Pipelinezielspeicherort mit dem Attribut
credential_namean. Wenn Sie im nächsten Schritt keinecredential_nameangeben, wird der Wert fürcredential_nameaufNULLgesetzt. Sie können den StandardwertNULLverwenden, wenn das Attributlocationeine öffentliche oder vorab authentifizierte URL ist.Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.
-
Legen Sie die Exportpipelineattribute fest.
Wenn Sie einen Parameter
table_nameangeben, werden Tabellenzeilen in den Objektspeicher exportiert. Wenn Sie einen Parameterqueryangeben, gibt die Abfrage eineSELECT-Anweisung an, sodass nur die erforderlichen Daten in den Objektspeicher exportiert werden.-
Verwenden Sie einen Parameter
table_name:BEGIN DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE( pipeline_name => 'EXP_PIPE1', attributes => JSON_OBJECT('credential_name' VALUE 'OBJECT_STORE_CRED', 'location' VALUE 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/', 'table_name' VALUE 'metric_table', 'key_column' VALUE 'metric_time', 'format' VALUE '{"type": "json"}', 'priority' VALUE 'MEDIUM', 'interval' VALUE '20') ); END; / -
Verwenden Sie einen Parameter
query:BEGIN DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE( pipeline_name => 'EXP_PIPE1', attributes => JSON_OBJECT('credential_name' VALUE 'OBJECT_STORE_CRED', 'location' VALUE 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/', 'query' VALUE 'SELECT * from metrics_table', 'key_column' VALUE 'metric_time', 'format' VALUE '{"type": "json"}', 'priority' VALUE 'MEDIUM', 'interval' VALUE '20') ); END; /Dabei ist
credential_namedie Zugangsdaten, die Sie im vorherigen Schritt erstellt haben.
Die folgenden Attribute müssen zum Ausführen einer Exportpipeline festgelegt werden:
-
location: Gibt den Speicherort des Zielobjektspeichers an. Die angegebenelocationgilt für einetable_namepro Pipeline. -
table_name: Gibt die Tabelle in der Datenbank an, die die Daten enthält, die Sie exportieren (entweder der Parametertable_nameoder der Parameterqueryist erforderlich). -
query: Gibt die Abfrage an, die in der Datenbank ausgeführt werden soll und die Daten bereitstellt, die Sie exportieren (entweder der Parametertable_nameoder der Parameterqueryist erforderlich). -
format: Beschreibt das Format der Daten, die Sie exportieren.Weitere Informationen finden Sie unter DBMS_CLOUD Package Format Options for EXPORT_DATA.
Der Wert
prioritybestimmt den Parallelisierungsgrad für das Abrufen von Daten aus der Datenbank.Der Wert
intervalgibt das Zeitintervall in Minuten zwischen aufeinanderfolgenden Ausführungen eines Pipelinejobs an. Der Standard-intervalbeträgt 15 Minuten.Weitere Informationen zu den Pipelineattributen finden Sie unter DBMS_CLOUD_PIPELINE-Attribute.
Nachdem Sie eine Pipeline erstellt haben, können Sie die Pipeline testen oder starten:
-
Pipeline zum Exportieren von Abfrageergebnissen (ohne Zeitstempel) erstellen und konfigurieren
Sie können eine Exportpipeline erstellen, um automatisch Daten aus Ihrer autonomen KI-Datenbank in den Objektspeicher zu exportieren. Mit dieser Exportpipelineoption geben Sie eine SQL-Abfrage an, die in der Pipeline regelmäßig ausgeführt wird, um Daten in den Objektspeicher zu exportieren. Mit dieser Exportoption können Sie die neuesten Daten aus Ihrer autonomen KI-Datenbank für den Objektspeicher freigeben, damit andere Anwendungen die Daten nutzen können.
Eine Exportpipeline exportiert Daten aus Ihrer autonomen KI-Datenbank in den Objektspeicher. Wenn Sie eine Exportpipeline erstellen, wird die Pipeline in regelmäßigen Abständen ausgeführt und platziert Daten im Objektspeicher.
-
Pipeline zum Exportieren von Daten in den Objektspeicher erstellen
BEGIN DBMS_CLOUD_PIPELINE.CREATE_PIPELINE( pipeline_name=>'EXP_PIPE2', pipeline_type=>'EXPORT', description=>'Export query results to object store.'); END; /Weitere Informationen finden Sie unter Prozedur CREATE_PIPELINE.
-
Erstellen Sie ein Zugangsdatenobjekt, um auf den Speicherort des Zielobjektspeichers zuzugreifen, in den Sie Datendateien exportieren.
Sie geben die Zugangsdaten für den Pipelinezielspeicherort mit dem Attribut
credential_namean. Wenn Sie im nächsten Schritt keinecredential_nameangeben, wird der Wert fürcredential_nameaufNULLgesetzt. Sie können den StandardwertNULLverwenden, wenn das Attributlocationeine öffentliche oder vorab authentifizierte URL ist.Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.
-
Legen Sie die Exportpipelineattribute fest.
BEGIN DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE( pipeline_name => 'EXP_PIPE2', attributes => JSON_OBJECT( 'credential_name' VALUE 'OBJECT_STORE_CRED', 'location' VALUE 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/', 'query' VALUE 'SELECT * FROM table_name', 'format' VALUE '{"type": "json"}', 'priority' VALUE 'MEDIUM', 'interval' VALUE '20') ); END; /Dabei ist
credential_namedie Zugangsdaten, die Sie im vorherigen Schritt erstellt haben.Die folgenden Attribute müssen zum Ausführen einer Exportpipeline festgelegt werden:
-
location: Gibt den Speicherort des Zielobjektspeichers an. -
query: Gibt die Abfrage an, die in der Datenbank ausgeführt werden soll und die Daten bereitstellt, die Sie exportieren. -
format: Beschreibt das Format der Daten, die Sie exportieren.Weitere Informationen finden Sie unter DBMS_CLOUD Package Format Options for EXPORT_DATA.
Der Wert
prioritybestimmt den Parallelisierungsgrad für das Abrufen von Daten aus der Datenbank.Der Wert
intervalgibt das Zeitintervall in Minuten zwischen aufeinanderfolgenden Ausführungen eines Pipelinejobs an. Der Standard-intervalbeträgt 15 Minuten.Weitere Informationen zu den Pipelineattributen finden Sie unter DBMS_CLOUD_PIPELINE-Attribute.
Nachdem Sie eine Pipeline erstellt haben, können Sie die Pipeline testen oder starten:
-
Pipelines testen
Verwenden Sie RUN_PIPELINE_ONCE, um eine Pipeline einmal nach Bedarf auszuführen, ohne einen geplanten Job zu erstellen.
RUN_PIPELINE_ONCE ist nützlich, um eine Pipeline zu testen, bevor Sie die Pipeline starten. Nachdem Sie eine Pipeline einmal ausgeführt haben, um die Pipeline zu testen und zu prüfen, ob sie wie erwartet funktioniert, setzen Sie den Status der Pipeline mit RESET_PIPELINE zurück (auf den Status, bevor Sie RUN_PIPELINE_ONCE ausgeführt haben).
-
Pipeline erstellen.
Weitere Informationen finden Sie unter Pipeline zum Laden der Daten erstellen und konfigurieren.
-
Führen Sie eine Pipeline einmal aus, um die Pipeline zu testen.
BEGIN DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE( pipeline_name => 'MY_PIPE1' ); END; /Weitere Informationen finden Sie unter Prozedur RUN_PIPELINE_ONCE.
-
Führen Sie alle erforderlichen Prüfungen aus, um zu prüfen, ob die Pipeline wie erwartet funktioniert.
Weitere Informationen finden Sie unter Pipelines überwachen und Fehler beheben.
-
Zurücksetzen der Pipeline.
BEGIN DBMS_CLOUD_PIPELINE.RESET_PIPELINE( pipeline_name => 'MY_PIPE1', purge_data => TRUE ); END; /Weitere Informationen finden Sie unter Prozedur RESET_PIPELINE.