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 base de données Autonomous AI 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 la base de données Autonomous AI. Vous pouvez utiliser un principal de ressource Oracle Cloud Infrastructure pour accéder à la banque d'objets Oracle Cloud Infrastructure et aux noms de ressource Amazon vers 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 AI Database.

    Pour plus d'informations, reportez-vous à Connexion à Autonomous AI 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 aux ressourcesOracle 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 Oracle Cloud Infrastructure Object Storage 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 à 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 à Options de format de package DBMS_CLOUD 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 à Mise en correspondance type de données Oracle/parquet du package DBMS_CLOUD pour plus d'informations sur la mise en correspondance type Oracle/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 à Mise en correspondance entre le type de données Oracle et le parquet du package DBMS_CLOUD 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 à Mise en correspondance entre le type de données Oracle et le parquet du package DBMS_CLOUD pour plus d'informations sur les limites de format NLS pour l'export de TIMESTAMP vers Parquet.