Pipeline erstellen und konfigurieren

Sie können eine oder mehrere Lade- oder Exportpipelines erstellen. Wenn Sie eine Pipeline erstellen, verwenden Sie Parameter und legen Pipelineattribute fest, um die Pipeline zu konfigurieren.

Die Optionen zum Erstellen und Konfigurieren einer Pipeline lauten wie folgt:

Pipeline zum Laden von Daten erstellen und konfigurieren

Sie können eine Pipeline erstellen, um Daten aus externen Dateien im Objektspeicher in Tabellen in Autonomous Database zu laden.

Eine Ladepipeline verwendet Daten, die im Objektspeicher gespeichert sind, und lädt sie in eine Tabelle in Autonomous Database. Wenn Sie eine Ladepipeline erstellen, wird die Pipeline in regelmäßigen Abständen ausgeführt, um die im Objektspeicher gespeicherten Daten zu konsumieren. Wenn neue Datendateien ankommen, lädt die Pipeline die neuen Daten. Sie können auch eine Pipeline verwenden, um Dateien mit Wiederaufnahme- und Wiederholungsfunktionen zuverlässig aus dem Objektspeicher in eine Tabelle in der Datenbank zu kopieren.

Bei einer Ladepipeline verwendet das Pipelinepackage DBMS_CLOUD.COPY_DATA zum Laden von Daten.

Verwenden Sie in Autonomous Database entweder eine vorhandene Tabelle, oder erstellen Sie die Datenbanktabelle, in die Sie Daten laden. Beispiele:

CREATE TABLE EMPLOYEE
            (name     VARCHAR2(128),
             age      NUMBER,
             salary   NUMBER);
  1. Erstellen Sie eine Pipeline zum Laden von Daten aus dem Objektspeicher.
    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.

  2. 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_name an. Wenn Sie im nächsten Schritt keine credential_name angeben, wird der Wert für credential_name auf NULL gesetzt. Sie können den Standardwert NULL verwenden, wenn das Attribut location eine öffentliche oder vorab authentifizierte URL ist.

    Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.

  3. Legen Sie die Pipelineattribute einschließlich der erforderlichen Attribute fest: location, table_name und format.
    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;
    /

    Die folgenden Attribute müssen festgelegt werden, um eine Ladepipeline auszuführen:

    • location: Gibt den Speicherort der Quelldatei im Objektspeicher an.

    • table_name: Gibt die Tabelle in der Datenbank an, in der Sie Daten laden. Die angegebene location gilt für eine table_name pro Pipeline.

    • format: Beschreibt das Format der Daten, die Sie laden.

      Weitere Informationen finden Sie unter DBMS_CLOUD Packageformatoptionen.

    credential_name ist die Zugangsdaten, die Sie im vorherigen Schritt erstellt haben.

    Der Wert priority bestimmt die Anzahl der parallel geladenen Dateien. Eine Pipeline mit einer höheren Priorität verbraucht mehr Datenbankressourcen und schließt jede Ausführung schneller ab als die Ausführung mit einer niedrigeren Priorität.

    Der Wert interval gibt das Zeitintervall in Minuten zwischen aufeinanderfolgenden Ausführungen eines Pipelinejobs an. Der Standardwert für interval beträgt 15 Minuten.

    Details zu den Pipelineattributen finden Sie unter DBMS_CLOUD_PIPELINE-Attribute.

    Nachdem Sie eine Pipeline erstellt haben, können Sie die Pipeline testen oder die Pipeline starten:

Alternativ können Sie zum Festlegen des Formats für JSON das folgende Format verwenden:

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 Autonomous Database 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 zum Exportieren von Daten.

Eine Exportpipeline exportiert Daten aus Ihrer Autonomous Database in den Objektspeicher. Wenn Sie eine Exportpipeline erstellen, wird die Pipeline in regelmäßigen Intervallen ausgeführt und platziert Daten im Objektspeicher.

  1. Erstellen Sie eine Pipeline zum Exportieren von Daten in den Objektspeicher.
    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.

  2. Erstellen Sie ein Zugangsdatenobjekt, um auf den Speicherort des Zielobjektspeichers zuzugreifen, in den Sie Datendateien exportieren.

    Sie geben die Zugangsdaten für das Pipelinezielverzeichnis mit dem Attribut credential_name an. Wenn Sie im nächsten Schritt keine credential_name angeben, wird der Wert für credential_name auf NULL gesetzt. Sie können den Standardwert NULL verwenden, wenn das Attribut location eine öffentliche oder vorab authentifizierte URL ist.

    Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.

  3. Legen Sie die Exportpipelineattribute fest.

    Wenn Sie einen table_name-Parameter angeben, werden Tabellenzeilen in den Objektspeicher exportiert. Wenn Sie einen query-Parameter angeben, gibt die Abfrage eine SELECT-Anweisung an, sodass nur die erforderlichen Daten in den Objektspeicher exportiert werden.

    • Verwenden Sie einen table_name-Parameter:

      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 query-Parameter:

      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_name die 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 angegebene location gilt für eine table_name pro Pipeline.

    • table_name: Gibt die Tabelle in der Datenbank an, die die zu exportierenden Daten enthält (entweder der Parameter table_name oder der Parameter query ist erforderlich).

    • query: Gibt die Abfrage an, die in der Datenbank ausgeführt werden soll und die Daten bereitstellt, die Sie exportieren (entweder der Parameter table_name oder der Parameter query ist erforderlich).

    • format: Beschreibt das Format der Daten, die Sie exportieren.

      Weitere Informationen finden Sie unter DBMS_CLOUD Packageformatoptionen für EXPORT_DATA.

    Der Wert priority bestimmt den Parallelisierungsgrad für das Abrufen von Daten aus der Datenbank.

    Der Wert interval gibt das Zeitintervall in Minuten zwischen aufeinanderfolgenden Ausführungen eines Pipelinejobs an. Der Standardwert für interval beträgt 15 Minuten.

    Details zu den Pipelineattributen finden Sie unter DBMS_CLOUD_PIPELINE-Attribute.

    Nachdem Sie eine Pipeline erstellt haben, können Sie die Pipeline testen oder die Pipeline starten:

Pipeline erstellen und konfigurieren, um Abfrageergebnisse (ohne Zeitstempel) zu exportieren

Sie können eine Exportpipeline erstellen, um Daten automatisch aus Autonomous Database in den Objektspeicher zu exportieren. Mit dieser Exportpipelineoption geben Sie eine SQL-Abfrage an, die von der Pipeline regelmäßig ausgeführt wird, um Daten in den Objektspeicher zu exportieren. Mit dieser Exportoption können Sie die neuesten Daten aus Autonomous Database für den Objektspeicher freigeben, damit andere Anwendungen die Daten nutzen können.

Eine Exportpipeline exportiert Daten aus Ihrer Autonomous Database in den Objektspeicher. Wenn Sie eine Exportpipeline erstellen, wird die Pipeline in regelmäßigen Intervallen ausgeführt und platziert Daten im Objektspeicher.

  1. Erstellen Sie eine Pipeline zum Exportieren von Daten in den Objektspeicher.
    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.

  2. Erstellen Sie ein Zugangsdatenobjekt, um auf den Speicherort des Zielobjektspeichers zuzugreifen, in den Sie Datendateien exportieren.

    Sie geben die Zugangsdaten für das Pipelinezielverzeichnis mit dem Attribut credential_name an. Wenn Sie im nächsten Schritt keine credential_name angeben, wird der Wert für credential_name auf NULL gesetzt. Sie können den Standardwert NULL verwenden, wenn das Attribut location eine öffentliche oder vorab authentifizierte URL ist.

    Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.

  3. 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_name die 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 Packageformatoptionen für EXPORT_DATA.

    Der Wert priority bestimmt den Parallelisierungsgrad für das Abrufen von Daten aus der Datenbank.

    Der Wert interval gibt das Zeitintervall in Minuten zwischen aufeinanderfolgenden Ausführungen eines Pipelinejobs an. Der Standardwert für interval beträgt 15 Minuten.

    Details zu den Pipelineattributen finden Sie unter DBMS_CLOUD_PIPELINE-Attribute.

    Nachdem Sie eine Pipeline erstellt haben, können Sie die Pipeline testen oder die Pipeline starten: