Dénomination de fichier pour la sortie texte (CSV, JSON, Parquet ou XML)
Décrit la dénomination de fichier de sortie à l'aide de DBMS_CLOUD.EXPORT_DATA
avec sortie de fichier texte CSV, JSON, Parquet ou XML.
DBMS_CLOUD.EXPORT_DATA
exécute la requête indiquée avec le paramètre query
et envoie les résultats dans des fichiers texte dans le bucket de banque d'objets cloud ou dans un répertoire. Le format de sortie dépend du paramètre format
type
que vous indiquez (CSV, JSON, Parquet ou XML).
Pour accélérer la procédure et générer la sortie le plus rapidement possible, DBMS_CLOUD.EXPORT_DATA
divise son travail. Ainsi, selon les ressources système, lorsque vous exécutez DBMS_CLOUD.EXPORT_DATA
, la procédure crée plusieurs fichiers de sortie soit dans le bucket de stockage d'objet cloud, soit dans le répertoire.
Chaque fichier généré est au format suivant :
[FileNamePrefix | client_info_module_action]_sequenceNum_timestamp.format_extension.[compression_extension]
-
FileNamePrefix : (facultatif) si un élément FileNamePrefix est indiqué,
DBMS_CLOUD.EXPORT_DATA
utilise le préfixe de nom de fichier afin de générer des noms de fichier pour les résultats. L'option FileNamePrefix est indiquée à l'aide du texte fourni après le nom du bucket ou du répertoire dans la valeur du paramètrefile_uri_list
.Vous ne pouvez pas fournir plusieurs valeurs pour FileNamePrefix dans
file_uri_list
. -
client_info_module_action: If a file name prefix is not supplied with the
file_uri_list
parameter,DBMS_CLOUD.EXPORT_DATA
uses the combination of client_info, application module and action as the file name prefix (when this information is available). La procédure obtient ces noms à partir des informations sur l'application pour la session de base de données qui exécute la requête. Reportez-vous à DBMS_APPLICATION_INFO pour plus d'informations sur client_info, le nom de module et le nom d'action.Si aucun préfixe de nom de fichier n'est fourni avec
file_uri_list
et que les attributs de session de base de données ne sont pas disponibles,DBMS_CLOUD.EXPORT_DATA
utilise le préfixe de nom de fichier "data
". -
sequenceNum : numéro de séquence associé à la requête
DBMS_CLOUD.EXPORT_DATA
. En fonction de la requête, du service de base de données et du nombre d'OCPU (si votre base de données utilise des OCPU), un ou plusieurs éléments sont sequenceNum. De plus, selon la taille des résultats, un ou plusieurs fichiers de sortie sont générés pour chaque fichier sequenceNum.Pour plus d'informations sur les services de base de données, reportez-vous à Gestion des simultanéités et des priorités sur Autonomous Database.
-
Date/heure : date/heure de téléchargement du fichier.
-
format_extension : la valeur par défaut dépend de la valeur
type
deformat
:- Format CSV :
.csv
- Format JSON :
.json
- Format PARQUET
.parquet
- Format XML :
.xml
Pour plus d'informations, reportez-vous à la description de l'option
format
fileextension
dans Options de format de package DBMS_CLOUD pour EXPORT_DATA. - Format CSV :
-
compression_extension : lorsque vous incluez le paramètre de paramètre de
format
avec l'optioncompression
définie sur la valeurgzip
, il s'agit de"gz"
.Lorsque
format
type
est défini surparquet
, la valeurcompression
snappy
est également prise en charge et est la valeur par défaut.
Par exemple, le préfixe de nom de fichier dans la procédure DBMS_CLOUD.EXPORT_DATA
suivante est indiqué dans le paramètre file_uri_list
, en tant que dept_export
. L'exemple génère la sortie vers la banque d'objets fournie dans le format indiqué.
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 'json'));
END;
/
Lorsque vous indiquez un préfixe de nom de fichier, les fichiers de sortie générés incluent le préfixe de nom de fichier, comme suit :
dept_export_1_20210809T173033Z.json
dept_export_2_20210809T173034Z.json
dept_export_3_20210809T173041Z.json
dept_export_4_20210809T173035Z.json
Le nombre de fichiers de sortie générés dépend de la taille des résultats, du service de base de données et du nombre d'OCPU (si votre base de données utilise des OCPU) de l'instance Autonomous Database.
Dans l'exemple suivant, le paramètre file_uri_list
n'inclut pas de préfixe de nom de fichier et le paramètre compression
est fourni, avec la valeur gzip
:
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/',
query => 'SELECT * FROM DEPT',
format => json_object('type' value 'json', 'compression' value 'gzip'));
END;
/
Lorsqu'aucun préfixe de nom de fichier n'est indiqué dans le paramètre file_uri_list
, DBMS_CLOUD.EXPORT_DATA
utilise un préfixe de nom de fichier au format suivant : client_info_Module_Action. Pour cet exemple, les fichiers de sortie générés incluent le préfixe de nom de fichier fourni par DBMS_CLOUD.EXPORT_DATA
, les fichiers sont compressés avec gzip et l'extension de fichier .gz
est ajoutée, comme suit :
Client1_Module1_Action1_1_20210809T173033Z.json.gz
Client1_Module1_Action1_2_20210809T173034Z.json.gz
Client1_Module1_Action1_3_20210809T173041Z.json.gz
Client1_Module1_Action1_4_20210809T173035Z.json.gz
Si les informations de session client_info_module_action ne sont pas disponibles lors de l'exécution de DBMS_CLOUD.EXPORT_DATA
, le préfixe de nom de fichier est défini sur data
. Exemples :
data_1_20210809T173033Z.json.gz
data_2_20210809T173034Z.json.gz
data_3_20210809T173041Z.json.gz
data_4_20210809T173035Z.json.gz
Par exemple, le préfixe de nom de fichier dans la procédure DBMS_CLOUD.EXPORT_DATA
suivante est indiqué dans le paramètre file_uri_list
, en tant que dept_export
. L'exemple génère la sortie dans le répertoire fourni au format indiqué.
BEGIN
DBMS_CLOUD.EXPORT_DATA
(
file_uri_list => 'DATA_PUMP_DIR:sales.json',
query => 'SELECT * FROM SALES',
format => JSON_OBJECT('type' value 'json'));
END;
/
Lorsque vous indiquez un préfixe de nom de fichier, le fichier de sortie généré inclut le préfixe de nom de fichier, comme suit :
sales_1_20230705T124523275915Z.csv
Remarques relatives à la dénomination de fichier avec DBMS_CLOUD.EXPORT_DATA
:
-
DBMS_CLOUD.EXPORT_DATA
ne crée pas de buckets ou de répertoires. -
Le nombre de fichiers générés par
DBMS_CLOUD.EXPORT_DATA
est déterminé par le nombre d'OCPU (si votre base de données utilise des OCPU), le service de base de données et la taille des données de résultat. -
Les points suivants s'appliquent lorsque vous indiquez un nom d'objet de répertoire dans le paramètre
file_uri_list
:-
Le répertoire indiqué doit exister et vous devez disposer de l'accès
WRITE
au répertoire. -
Le nom du répertoire est sensible à la casse lorsqu'il est placé entre guillemets doubles.
-
Le paramètre de nom d'informations d'identification ne doit pas être indiqué.
-
-
Pour la sortie CSV, JSON ou XML, par défaut, lorsqu'un fichier généré contient 10 Mo de données, un nouveau fichier de sortie est créé. Toutefois, si vous disposez de moins de 10 Mo de données de résultat, plusieurs fichiers de sortie peuvent être générés, selon le service de base de données et le nombre d'OCPU (si votre base de données utilise des OCPU) de l'instance Autonomous Database.
La taille de bloc de fichier de sortie par défaut est 10 Mo pour CSV, JSON ou XML. Vous pouvez modifier cette valeur avec l'option du paramètre de
format
maxfilesize
. Pour plus d'informations, reportez-vous à DBMS_CLOUD Options de format de package pour EXPORT_DATA. -
Pour la sortie Parquet, chaque fichier généré est inférieur à 128 Mo et plusieurs fichiers de sortie peuvent être générés. Toutefois, si vous disposez de moins de 128 Mo de données de résultat, plusieurs fichiers de sortie peuvent être générés en fonction du service de base de données et du nombre d'OCPU (si votre base de données utilise des OCPU) de l'instance Autonomous Database.
L'option
maxfilesize
du paramètreformat
ne s'applique pas aux fichiers Parquet.
Rubrique parent : Export de données vers la banque d'objets en tant que texte