Daten als Parquet in Cloud-Objektspeicher exportieren

Zeigt die Schritte zum Exportieren von Tabellendaten aus Autonomous Database in Cloud Object Storage als Parquet-Daten durch Angabe einer Abfrage an.

Diese Exportmethode unterstützt alle von Autonomous Database unterstützten Cloud-Objektspeicher. Außerdem können Sie einen Oracle Cloud Infrastructure-Resource Principal für den Zugriff auf Ihren Oracle Cloud Infrastructure-Objektspeicher, Amazon-Ressourcennamen (ARNs) für den Zugriff auf AWS Simple Storage Service (S3), einen Azure-Service-Principal für den Zugriff auf Azure-BLOB-Speicher oder Azure Data Lake Storage oder einen Google-Serviceaccount für den Zugriff auf Google Cloud Platform-(GCP-)Ressourcen verwenden.

  1. Verbinden Sie sich mit Ihrer Autonomous Database-Instanz.

    Weitere Informationen finden Sie unter Verbindung zu Autonomous Database herstellen.

  2. Speichern Sie Ihre Zugangsdaten für die Cloud-Objektspeicher mit DBMS_CLOUD.CREATE_CREDENTIAL.

    Beispiel:

    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'user1@example.com',
        password => 'password'
      );
    END;
    /

    Die Werte, die Sie für username und password angeben, hängen vom verwendeten Cloud-Objektspeicherservice ab.

    Das Erstellen von Zugangsdaten für den Zugriff auf den Oracle Cloud Infrastructure-Objektspeicher ist nicht erforderlich, wenn Sie Resource-Principal-Zugangsdaten aktivieren. Weitere Informationen finden Sie unter Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen nutzen.

  3. Führen Sie DBMS_CLOUD.EXPORT_DATA aus, und geben Sie den Parameter format type mit dem Wert parquet an, um die Ergebnisse als Parkettdateien in Cloud Object Storage zu exportieren.
    Um die Parkettausgabedateien zu generieren, gibt es zwei Optionen für den Parameter file_uri_list:
    • Setzen Sie den Wert file_uri_list auf die URL für einen vorhandenen Bucket in Ihrem Cloud-Objektspeicher.

    • Setzen Sie den Wert file_uri_list auf die URL für einen vorhandenen Bucket in Ihrem Cloud Object Storage, und fügen Sie ein Dateinamenpräfix hinzu, das beim Generieren der Dateinamen für die exportierten Parkettdateien verwendet werden soll.

    Wenn Sie das Dateinamenpräfix nicht in die file_uri_list aufnehmen, stellt DBMS_CLOUD.EXPORT_DATA ein Dateinamenpräfix bereit. Weitere Informationen finden Sie unter Dateibenennung für Textausgabe (CSV, JSON, Parquet oder XML).

    Beispiel: Im Folgenden wird DBMS_CLOUD.EXPORT_DATA mit einem Dateinamenpräfix dargestellt, das in file_uri_list angegeben ist:

    BEGIN
      DBMS_CLOUD.EXPORT_DATA(
        credential_name => 'DEF_CRED_NAME',
        file_uri_list   => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/dept_export',
        query           => 'SELECT * FROM DEPT',
        format          => JSON_OBJECT('type' value 'parquet', 'compression' value 'snappy'));
    END;
    /

    In diesem Beispiel ist namespace-string der Oracle Cloud Infrastructure-Objektspeicher-Namespace und bucketname der Bucket-Name. Weitere Informationen finden Sie unter Object Storage-Namespaces.

    Ausführliche Informationen zu den Parametern finden Sie unter Prozedur EXPORT_DATA.

    Ausführliche Informationen zu den verfügbaren format-Parametern, die Sie mit DBMS_CLOUD.EXPORT_DATA verwenden können, finden Sie unter DBMS_CLOUD Package Format Options for EXPORT_DATA.

Hinweise zum Exportieren mit DBMS_CLOUD.EXPORT_DATA:

  • Der von Ihnen angegebene Parameter query kann bei Bedarf eine erweiterte Abfrage sein, z.B. eine Abfrage, die Joins oder Unterabfragen enthält.

  • Geben Sie den Parameter format mit der Option compression an, um die Ausgabedateien zu komprimieren. Der Standardwert compression für type parquet ist snappy.

  • Wenn Sie die exportierten Dateien nicht mehr benötigen, verwenden Sie die Prozedur DBMS_CLOUD.DELETE_OBJECT, oder verwenden Sie native Cloud Object Storage-Befehle, um die Dateien zu löschen.

  • Weitere Informationen zur Zuordnung von Oracle-Typ zu Parquet-Typ finden Sie unter DBMS_CLOUD Oracle-Datentyp zu Parquet-Typ verpacken.

    Die folgenden Typen werden nicht unterstützt oder haben Einschränkungen bei der Unterstützung für den Export von Parquet mit DBMS_CLOUD.EXPORT_DATA:

    Oracle-spezifischer Typ Notizen

    BFILE

    Wird nicht unterstützt

    BLOB

    Wird nicht unterstützt

    DATE

    Unterstützt mit der folgenden Einschränkung: Das DATE-Format unterstützt nur Datum, Monat und Jahr. Stunde, Minute und Sekunden werden nicht unterstützt.

    Weitere Informationen zu den NLS-Formatbeschränkungen für den Export von DATE in Parquet finden Sie unter DBMS_CLOUD Oracle-Datentyp-/Parquet-Mapping verpacken.

    INTERVAL DAY TO SECOND

    Wird intern unterstützt und als Zeichenfolge behandelt

    INTERVAL YEAR TO MONTH

    Wird intern unterstützt und als Zeichenfolge behandelt

    LONG

    Wird nicht unterstützt

    LONG RAW

    Wird nicht unterstützt

    NUMBER

    Unterstützt mit den folgenden Einschränkungen:

    • Kann eine maximale Genauigkeit von 38 und eine Skala kleiner als die Präzision haben.
    • Wenn für den Spaltentyp NUMBER keine Genauigkeit und keine Skalierung angegeben ist, wird standardmäßig die Gesamtstellenzahl 38 und die Skalierung 20 verwendet.
    • Negative Skalierung wird für NUMBER-Typen nicht unterstützt.

    Object Types

    Wird nicht unterstützt

    TIMESTAMP

    Unterstützt mit den folgenden Einschränkungen:

    • Wenn mehrere Spalten mit unterschiedlicher Genauigkeit vorhanden sind, wird die höchste Genauigkeit verwendet.
    • TIMESTAMP WITH TIME ZONE Der Oracle-Datentyp verwendet nur den Zeitstempel.

    Weitere Informationen zu den NLS-Formatbeschränkungen für den Export von TIMESTAMP in Parquet finden Sie unter DBMS_CLOUD Oracle-Datentyp-/Parquet-Mapping verpacken.