Export de données au format Parquet vers le stockage d'objet cloud

Présente les étapes d'export de données de table de votre instance Autonomous Database vers Cloud Object Storage en tant que données Parquet en indiquant une requête.

Cette méthode d'export prend en charge toutes les banques d'objets cloud prises en charge par Autonomous Database. Vous pouvez utiliser un principal de ressource Oracle Cloud Infrastructure pour accéder à votre banque d'objets Oracle Cloud Infrastructure, à des noms de ressource Amazon pour accéder à AWS Simple Storage Service (S3), à un principal de service Azure pour accéder au stockage BLOB Azure ou à Azure Data Lake Storage, ou à un compte de service Google pour accéder aux ressources Google Cloud Platform (GCP).

  1. Connectez-vous à votre instance Autonomous Database.

    Pour plus d'informations, reportez-vous à Connexion à Autonomous Database.

  2. Stockez vos informations d'identification de stockage d'objet cloud à l'aide de la procédure DBMS_CLOUD.CREATE_CREDENTIAL,

    Par exemple :

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

    Les valeurs fournies pour username et password dépendent du service Cloud Object Storage que vous utilisez .

    La création d'informations d'identification pour accéder à la banque d'objets Oracle Cloud Infrastructure n'est pas requise si vous activez les informations d'identification de principal de ressource. Pour plus d'informations, reportez-vous à Utilisation du principal de ressource pour accéder à des ressources Oracle Cloud Infrastructure.

  3. Exécutez DBMS_CLOUD.EXPORT_DATA et indiquez le paramètre format type avec la valeur parquet pour exporter les résultats en tant que fichiers parquet sur Cloud Object Storage.
    Pour générer les fichiers de sortie du parquet, deux options sont disponibles pour le paramètre file_uri_list :
    • Définissez la valeur file_uri_list sur l'URL d'un bucket existant sur le stockage d'objet cloud.

    • Définissez la valeur file_uri_list sur l'URL d'un bucket existant sur le stockage d'objet cloud et incluez un préfixe de nom de fichier à utiliser lors de la génération des noms de fichier pour les fichiers de parquet exportés.

    Si vous n'incluez pas le préfixe de nom de fichier dans file_uri_list, DBMS_CLOUD.EXPORT_DATA fournit un préfixe de nom de fichier. Pour plus de détails, reportez-vous à Dénomination de fichier pour la sortie texte (CSV, JSON, Parquet ou XML).

    Par exemple, l'exemple suivant montre DBMS_CLOUD.EXPORT_DATA avec un préfixe de nom de fichier spécifié dans file_uri_list :

    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;
    /

    Dans cet exemple, namespace-string est l'espace de noms d'objet Oracle Cloud Infrastructure et bucketname est le nom du bucket. Pour plus d'informations, reportez-vous à Présentation des espaces de noms Object Storage.

    Pour obtenir des informations détaillées sur les paramètres, reportez-vous à la procédure EXPORT_DATA.

    Pour plus d'informations sur les paramètres format disponibles que vous pouvez utiliser avec DBMS_CLOUD.EXPORT_DATA, reportez-vous à DBMS_CLOUD Options de format de package pour EXPORT_DATA.

Notes pour l'exportation avec DBMS_CLOUD.EXPORT_DATA :

  • Le paramètre query que vous fournissez peut être une requête avancée, si nécessaire, telle qu'une requête qui inclut des jointures ou des sous-requêtes.

  • Indiquez le paramètre format avec l'option compression pour compresser les fichiers de sortie. La valeur par défaut compression pour type parquet est snappy.

  • Lorsque vous n'avez plus besoin des fichiers que vous exportez, utilisez la procédure DBMS_CLOUD.DELETE_OBJECT ou utilisez les commandes Cloud Object Storage natives pour supprimer les fichiers.

  • Reportez-vous à DBMS_CLOUD Mise en correspondance du type de données Oracle avec le parquet pour plus d'informations sur la mise en correspondance du type Oracle avec le type de parquet.

    Les types suivants ne sont pas pris en charge ou leur prise en charge de l'export de Parquet avec DBMS_CLOUD.EXPORT_DATA est limitée :

    Type Oracle Remarques

    BFILE

    Non pris en charge

    BLOB

    Non pris en charge

    DATE

    Prise en charge avec la limitation suivante : le format DATE ne prend en charge que la date, le mois et l'année. Les heures, minutes et secondes ne sont pas prises en charge.

    Reportez-vous à DBMS_CLOUD Package Oracle Data Type to Parquet Mapping pour plus d'informations sur les limites de format NLS pour l'export de DATE vers Parquet.

    INTERVAL DAY TO SECOND

    Pris en charge et traité en tant que chaîne en interne

    INTERVAL YEAR TO MONTH

    Pris en charge et traité en tant que chaîne en interne

    LONG

    Non pris en charge

    LONG RAW

    Non pris en charge

    NUMBER

    Prise en charge avec les limitations suivantes :

    • Peut avoir une précision maximale de 38 et une échelle inférieure à la précision.
    • Si aucune précision et échelle n'est fournie pour le type de colonne NUMBER, la précision par défaut est 38 et l'échelle 20.
    • L'échelle négative n'est pas prise en charge pour les types NUMBER.

    Object Types

    Non pris en charge

    TIMESTAMP

    Prise en charge avec les limitations suivantes :

    • S'il y a plusieurs colonnes avec une précision différente, la précision la plus élevée sera prise.
    • TIMESTAMP WITH TIME ZONE Le type de données Oracle utilise uniquement l'horodatage.

    Reportez-vous à DBMS_CLOUD Package Oracle Data Type to Parquet Mapping pour plus d'informations sur les limites de format NLS pour l'export de TIMESTAMP vers Parquet.