Denominazione dei file per l'output di testo (CSV, JSON, Parquet o XML)
Descrive la denominazione del file di output utilizzando DBMS_CLOUD.EXPORT_DATA
con output file di testo CSV, JSON, Parquet o XML.
DBMS_CLOUD.EXPORT_DATA
esegue la query specificata con il parametro query
e invia i risultati a file di testo nel bucket dell'area di memorizzazione degli oggetti cloud o a una directory. Il formato di output dipende dal parametro format
type
specificato (uno di CSV, JSON, Parquet o XML).
Per velocizzare la procedura e generare l'output il più velocemente possibile, DBMS_CLOUD.EXPORT_DATA
divide il suo lavoro. Ciò significa che, a seconda delle risorse di sistema, quando si esegue DBMS_CLOUD.EXPORT_DATA
la procedura crea più file di output nel bucket dell'area di memorizzazione degli oggetti cloud o nella directory.
Il formato per ogni file generato è:
[FileNamePrefix | client_info_module_action]_sequenceNum_timestamp.format_extension.[compression_extension]
-
FileNamePrefix: (facoltativo) se viene fornito un valore FileNamePrefix,
DBMS_CLOUD.EXPORT_DATA
utilizza il prefisso del nome file per generare i nomi dei file per i risultati. Il valore FileNamePrefix viene specificato utilizzando il testo fornito dopo il nome del bucket o della directory nel valore del parametrofile_uri_list
.Non è possibile fornire più valori per FileNamePrefix in
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 procedura ottiene questi nomi dalle informazioni dell'applicazione per la sessione di database che esegue la query. Per informazioni sul nome client_info, sul nome modulo e sull'azione, vedere DBMS_APPLICATION_INFO.Se il prefisso del nome file non viene fornito con
file_uri_list
e gli attributi della sessione del database non sono disponibili,DBMS_CLOUD.EXPORT_DATA
utilizza il prefisso del nome file "data
". -
sequenceNum: numero di sequenza associato alla query
DBMS_CLOUD.EXPORT_DATA
. A seconda della query, del servizio di database e del numero di ECPU (OCPU se il database utilizza OCPU), sono disponibili una o più sequenceNum. Inoltre, a seconda delle dimensioni dei risultati, sono disponibili uno o più file di output per ogni file sequenceNum.Per informazioni sui servizi di database, vedere Gestisci concorrenza e priorità su Autonomous Database.
-
indicatore orario: l'indicatore orario del caricamento del file.
-
format_extension: il valore predefinito dipende dal valore
format
type
:- Formato CSV:
.csv
- Formato JSON:
.json
- Formato PARQUET
.parquet
- Formato XML:
.xml
Per ulteriori informazioni, vedere la descrizione dell'opzione
format
fileextension
in DBMS_CLOUD Package Format Options for EXPORT_DATA. - Formato CSV:
-
compression_extension: se si include il parametro
format
con l'opzionecompression
con il valoregzip
, il valore è"gz"
.Se
format
type
èparquet
, anche il valorecompression
snappy
è supportato ed è l'impostazione predefinita.
Ad esempio, il prefisso del nome file nella procedura DBMS_CLOUD.EXPORT_DATA
seguente è specificato nel parametro file_uri_list
, come dept_export
. L'esempio genera l'output nell'area di memorizzazione degli oggetti fornita nel formato specificato.
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;
/
Quando si specifica il prefisso di un nome file, i file di output generati includono il prefisso del nome file, simile al seguente:
dept_export_1_20210809T173033Z.json
dept_export_2_20210809T173034Z.json
dept_export_3_20210809T173041Z.json
dept_export_4_20210809T173035Z.json
Il numero di file di output generati dipende dalla dimensione dei risultati, dal servizio di database e dal numero di ECPU (OCPU se il database utilizza le OCPU) nell'istanza di Autonomous Database.
Nell'esempio seguente il parametro file_uri_list
non include un prefisso nome file e viene fornito il parametro compression
, con valore 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;
/
Quando il prefisso di un nome file non si trova nel parametro file_uri_list
, DBMS_CLOUD.EXPORT_DATA
utilizza un prefisso di nome file nel formato: client_info_modulo_action. Per questo esempio i file di output generati includono il prefisso del nome file fornito da DBMS_CLOUD.EXPORT_DATA
e i file vengono compressi con gzip e viene aggiunta l'estensione file .gz
, come indicato di seguito.
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
Se le informazioni sulla sessione client_info_modulo_azione non sono disponibili quando si esegue DBMS_CLOUD.EXPORT_DATA
, il prefisso del nome file viene impostato su data
. Ad esempio:
data_1_20210809T173033Z.json.gz
data_2_20210809T173034Z.json.gz
data_3_20210809T173041Z.json.gz
data_4_20210809T173035Z.json.gz
Ad esempio, il prefisso del nome file nella procedura DBMS_CLOUD.EXPORT_DATA
seguente è specificato nel parametro file_uri_list
, come dept_export
. L'esempio genera l'output nella directory specificata nel formato specificato.
BEGIN
DBMS_CLOUD.EXPORT_DATA
(
file_uri_list => 'DATA_PUMP_DIR:sales.json',
query => 'SELECT * FROM SALES',
format => JSON_OBJECT('type' value 'json'));
END;
/
Quando si specifica un prefisso di nome file, il file di output generato include il prefisso del nome file, simile al seguente:
sales_1_20230705T124523275915Z.csv
Note per la denominazione dei file con DBMS_CLOUD.EXPORT_DATA
:
-
DBMS_CLOUD.EXPORT_DATA
non crea bucket o directory. -
Il numero di file generati da
DBMS_CLOUD.EXPORT_DATA
è determinato dal numero di ECPU (OCPU se il database utilizza OCPU), dal servizio di database e dalla dimensione dei dati dei risultati. -
Quando si fornisce un nome oggetto directory nel parametro
file_uri_list
, si applica quanto riportato di seguito.-
La directory specificata deve esistere ed è necessario disporre dell'accesso
WRITE
alla directory. -
Il nome della directory fa distinzione tra maiuscole e minuscole quando è racchiuso tra virgolette doppie.
-
Il parametro del nome della credenziale non deve essere fornito.
-
-
Per l'output CSV, JSON o XML, per impostazione predefinita quando un file generato contiene 10 MB di dati, viene creato un nuovo file di output. Tuttavia, se hai meno di 10 MB di dati dei risultati, potresti avere più file di output, a seconda del servizio di database e del numero di ECPU (OCPU se il database utilizza OCPU) per l'istanza di Autonomous Database.
La dimensione chunk predefinita del file di output è 10 MB per CSV, JSON o XML. È possibile modificare questo valore con l'opzione
maxfilesize
del parametroformat
. Per ulteriori informazioni, vedere DBMS_CLOUD Package Format Options for EXPORT_DATA. -
Per l'output Parquet, ogni file generato è inferiore a 128 MB e possono essere generati più file di output. Tuttavia, se hai meno di 128 MB di dati dei risultati, potresti avere più file di output a seconda del servizio di database e del numero di ECPU (OCPU se il database utilizza le OCPU) per l'istanza di Autonomous Database.
L'opzione
maxfilesize
del parametroformat
non si applica ai file Parquet.
Argomento padre: Esporta dati nell'area di memorizzazione degli oggetti come testo