Dataplex Universal Catalog fornisce modelli, basati su Dataflow, per eseguire attività comuni di elaborazione dei dati come l'importazione datie, l'elaborazione e la gestione del ciclo di vita dei dati. Questa guida descrive come configurare ed eseguire i modelli di elaborazione dei dati.
Prima di iniziare
I modelli di Dataplex Universal Catalog sono basati su Dataflow. Prima di utilizzare i modelli, abilita le API Dataflow.
Tieni presente quanto segue:
Tutti i modelli supportano le opzioni della pipeline Dataflow comuni.
Dataplex Universal Catalog utilizza le pipeline di dati per pianificare le attività definite dai modelli.
Puoi visualizzare solo le attività pianificate tramite Dataplex Universal Catalog nella console Google Cloud nella pagina Dataplex Universal Catalog.
Modello: Converti i dati non elaborati in dati selezionati
Il modello di conversione del formato file di Dataplex Universal Catalog converte i dati in un asset Cloud Storage di Dataplex Universal Catalog o in un elenco di entità Dataplex Universal Catalog archiviate in formato CSV o JSON in formato Parquet o Avro in un altro asset Dataplex Universal Catalog. Il layout della partizione viene mantenuto nella conversione. Supporta anche la compressione dei file di output.
Parametri del modello
Parametro | Descrizione |
---|---|
inputAssetOrEntitiesList |
L'asset Dataplex Universal Catalog o le entità Dataplex Universal Catalog che
contengono i file di input. Questo parametro deve seguire il formato:
projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name>
o projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/entities/<entity1-name>,projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/entities/<entity 2 name>... |
outputFileFormat |
Il formato del file di output in Cloud Storage. Questo parametro deve
seguire il formato: PARQUET o AVRO . |
outputAsset |
Il nome dell'asset Dataplex Universal Catalog che contiene il bucket Cloud Storage in cui verranno archiviati i file di output. Questo
parametro deve seguire il formato: projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name> . Puoi trovare
outputAsset nella
console Google Cloud , nella scheda Details dell'asset Dataplex Universal Catalog. |
outputFileCompression |
(Facoltativo) La compressione del file di output. Il valore predefinito di questo
parametro è SNAPPY . Altri valori per il parametro possono essere
UNCOMPRESSED , SNAPPY , GZIP o
BZIP2 . BZIP2 non è supportato per
i file PARQUET . |
writeDisposition |
(Facoltativo) Specifica l'azione che si verifica se un file di destinazione
esiste già. Il valore predefinito per questo parametro è SKIP ,
che indica di elaborare solo i file che non esistono nella
directory di destinazione. Altri valori per il parametro possono essere
OVERWRITE (sovrascrivi tutti i file esistenti) o FAIL
(non elaborare nulla e genera un errore se esiste già almeno un file di destinazione). |
updateDataplexMetadata |
(Facoltativo) Indica se aggiornare i metadati di Dataplex Universal Catalog per le
entità appena create. Il valore predefinito di questo parametro è
Se abilitata, la pipeline copierà automaticamente lo schema dall'origine alle entità Dataplex di destinazione e l'individuazione automatica del Catalogo universale Dataplex non verrà eseguita. Utilizza questo flag se lo schema dei dati di origine (non elaborati) è gestito da Dataplex. |
Esegui il modello
Console
Nella Google Cloud console, vai alla pagina Dataplex Universal Catalog.
Vai alla visualizzazione Processo.
Fai clic su Crea attività.
In Converti in formati selezionati, fai clic su Crea attività.
Scegli un lake Dataplex Universal Catalog.
Fornisci un nome per l'attività.
Scegli una regione per l'esecuzione delle attività.
Compila i parametri obbligatori.
Fai clic su Continua.
gcloud
Nella shell o nel terminale, esegui il modello:
gcloud beta dataflow flex-template run JOB_NAME \ --project=PROJECT_ID \ --region=REGION_NAME \ --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_File_Format_Conversion_Preview \ --parameters \ inputAssetOrEntitiesList=INPUT_ASSET_OR_ENTITIES_LIST,\ outputFileFormat=OUTPUT_FILE_FORMAT,\ outputAsset=OUTPUT_ASSET
Sostituisci quanto segue:
JOB_NAME: a job name of your choice PROJECT_ID: your template project ID REGION_NAME: region in which to run the job INPUT_ASSET_OR_ENTITIES_LIST: path to your JDBC drivers OUTPUT_FILE_FORMAT: your output file format in Cloud Storage OUTPUT_ASSET: your Dataplex Universal Catalog output asset ID
REST
Invia una richiesta HTTP POST:
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION_NAME/flexTemplates:launch { "launch_parameter": { "jobName": "JOB_NAME", "parameters": { "inputAssetOrEntitiesList": "INPUT_ASSET_OR_ENTITIES_LIST", "outputFileFormat": "OUTPUT_FILE_FORMAT", "outputAsset": "OUTPUT_ASSET", }, "containerSpecGcsPath": "gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_File_Format_Conversion_Preview", } }
Sostituisci quanto segue:
PROJECT_ID: your template project ID REGION_NAME: region in which to run the job JOB_NAME: a job name of your choice INPUT_ASSET_OR_ENTITIES_LIST: path to your JDBC drivers OUTPUT_FILE_FORMAT: your output file format in Cloud Storage OUTPUT_ASSET: your Dataplex Universal Catalog output asset ID
Modello: livello dei dati da un asset BigQuery a un asset Cloud Storage
Il modello BigQuery to Cloud Storage del Catalogo universale Dataplex copia i dati da un asset BigQuery del Catalogo universale Dataplex a un asset Cloud Storage del Catalogo universale Dataplex in un layout e un formato compatibili con il Catalogo universale Dataplex. Puoi specificare un set di dati BigQuery o un elenco di tabelle BigQuery da copiare. Per una maggiore flessibilità, il modello consente di copiare i dati precedenti a una data di modifica specificata e di eliminare facoltativamente i dati da BigQuery dopo una copia riuscita.
Quando copi tabelle partizionate da BigQuery a Cloud Storage:
- Il modello crea partizioni in stile Hive nel bucket Cloud Storage.
La chiave di partizionamento in stile Hive di BigQuery non può essere uguale a una colonna esistente. Puoi utilizzare l'opzione
enforceSamePartitionKey
per creare una nuova chiave di partizione o mantenere la stessa chiave di partizione, ma rinominare la colonna esistente. - Dataplex Universal Catalog Discovery registra il tipo di partizione
come
string
durante la creazione di una tabella BigQuery (e di una tabella in Dataproc Metastore). Ciò potrebbe influire sui filtri delle partizioni esistenti.
Esiste un limite al numero di tabelle e partizioni che possono essere trasformate in una singola esecuzione del modello, ovvero circa 300. Il numero esatto dipende dalla lunghezza dei nomi delle tabelle e da altri fattori.
Parametri del modello
Parametro | Descrizione |
---|---|
sourceBigQueryDataset |
Il set di dati BigQuery da cui eseguire il tiering dei dati. Questo parametro
deve contenere un nome di asset Dataplex Universal Catalog nel formato
projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name>
o un ID set di dati BigQuery nel formato
projects/<name>/datasets/<dataset-id> . |
destinationStorageBucketAssetName |
Il nome dell'asset Dataplex Universal Catalog per il bucket Cloud Storage
in cui eseguire il tiering dei dati. Questo parametro deve seguire il formato
projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name> . |
tables |
(Facoltativo) Un elenco separato da virgole di tabelle BigQuery a livelli. Se non viene fornito alcun elenco, tutte le tabelle verranno suddivise in livelli. Le tabelle devono essere specificate solo in base al nome (senza prefisso di progetto o set di dati) e sono sensibili alle maiuscole. |
exportDataModifiedBeforeDateTime |
(Facoltativo) Utilizza questo parametro per spostare i dati precedenti a questa data (e
ora facoltativa). Per le tabelle BigQuery partizionate, sposta
le partizioni modificate l'ultima volta prima di questa data/ora. Per le tabelle non partizionate, sposta se la tabella è stata modificata l'ultima volta prima di questa data/ora. Se non
specificato, sposta tutte le tabelle/partizioni. La data/ora viene analizzata nel
fuso orario predefinito per impostazione predefinita, ma sono supportati i suffissi facoltativi Z e
+HH:mm . Questo parametro deve seguire il formato
YYYY-MM-DD o YYYY-MM-DDTHH:mm:ss o
YYYY-MM-DDTHH:mm:ss+03:00 .
È supportata anche la data/ora relativa, che deve seguire il formato
-PnDTnHnMn.nS (deve iniziare con -P , che
indica l'ora nel passato).
|
fileFormat |
(Facoltativo) Il formato del file di output in Cloud Storage. Il valore
predefinito di questo parametro è PARQUET . Un altro valore per il
parametro può essere AVRO . |
fileCompression |
(Facoltativo) La compressione del file di output. Il valore predefinito di questo
parametro è SNAPPY . Altri valori per il parametro possono essere
UNCOMPRESSED , SNAPPY , GZIP o
BZIP2 . BZIP2 non è supportato per i file
PARQUET . |
deleteSourceData |
(Facoltativo) Indica se eliminare i dati di origine da BigQuery
dopo un'esportazione riuscita. I valori possono essere true o
false . Il valore predefinito di questo parametro è
false . |
partitionIdRegExp |
(Facoltativo) Elabora solo le partizioni con ID partizione corrispondente a questa espressione regolare. Se non viene fornito alcun valore, questo parametro viene impostato per elaborare tutto. |
writeDisposition |
(Facoltativo) Specifica l'azione che si verifica se esiste già un file di destinazione, ovvero se una o più tabelle/partizioni sono già state suddivise in livelli. Il valore predefinito di questo parametro è SKIP ,
che indica di elaborare solo le tabelle/partizioni che non sono
già state suddivise in livelli. Altri valori per il parametro possono essere
OVERWRITE (sovrascrivi tutti i file esistenti) o FAIL
(non elaborare nulla e genera un errore se esiste già almeno un file di destinazione). |
enforceSamePartitionKey |
(Facoltativo) Indica se applicare la stessa chiave di partizione. A causa di una limitazione di BigQuery, non è possibile che la chiave di partizione (nel percorso del file) in una tabella esterna partizionata abbia lo stesso nome di una delle colonne del file. Se questo parametro è true (che è il valore predefinito), la chiave di partizione del file di destinazione viene impostata sul nome della colonna di partizione originale e la colonna nel file viene rinominata. Se false, la chiave di partizione viene rinominata. Ad esempio, se la tabella originale è partizionata in una colonna denominata
Se |
updateDataplexMetadata |
(Facoltativo) Indica se aggiornare i metadati di Dataplex Universal Catalog per le
entità appena create. Il valore predefinito di questo parametro è
Se abilitata, la pipeline copierà automaticamente lo schema dall'origine alle entità Dataplex di destinazione e l'individuazione automatica del Catalogo universale Dataplex non verrà eseguita. Utilizza questo flag se gestisci lo schema delle tabelle BigQuery di origine. |
Esegui il modello
Console
Nella Google Cloud console, vai alla pagina Dataplex Universal Catalog.
Vai alla visualizzazione Processo.
Fai clic su Crea attività.
Nella sezione Livello da BQ ad asset GCS, fai clic su Crea attività.
Scegli un lake Dataplex Universal Catalog.
Fornisci un nome per l'attività.
Scegli una regione per l'esecuzione delle attività.
Compila i parametri obbligatori.
Fai clic su Continua.
gcloud
Nella shell o nel terminale, esegui il modello:
gcloud beta dataflow flex-template run JOB_NAME \ --project=PROJECT_ID \ --region=REGION_NAME \ --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_BigQuery_to_GCS_Preview \ --parameters \ sourceBigQueryDataset=SOURCE_ASSET_NAME_OR_DATASET_ID,\ destinationStorageBucketAssetName=DESTINATION_ASSET_NAME
Sostituisci quanto segue:
JOB_NAME: a job name of your choice PROJECT_ID: your template project ID REGION_NAME: region in which to run the job SOURCE_ASSET_NAME_OR_DATASET_ID: your Dataplex Universal Catalog asset name for the source BigQuery dataset, or the dataset ID DESTINATION_ASSET_NAME: your Dataplex Universal Catalog asset name for the destination Cloud Storage bucket
REST
Invia una richiesta HTTP POST:
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION_NAME/flexTemplates:launch { "launch_parameter": { "jobName": "JOB_NAME", "parameters": { "sourceBigQueryDataset": "SOURCE_ASSET_NAME_OR_DATASET_ID", "destinationStorageBucketAssetName": "DESTINATION_ASSET_NAME", }, "containerSpecGcsPath": "gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_BigQuery_to_GCS_Preview", } }
Sostituisci quanto segue:
PROJECT_ID: your template project ID REGION_NAME: region in which to run the job JOB_NAME: a job name of your choice SOURCE_ASSET_NAME_OR_DATASET_ID: your Dataplex Universal Catalog asset name for the source BigQuery dataset, or the dataset ID DESTINATION_ASSET_NAME: your Dataplex Universal Catalog asset name for the destination Cloud Storage bucket REGION_NAME: region in which to run the job
Pianificare altri modelli Dataflow forniti da Google Cloudo personalizzati
Dataplex Universal Catalog consente di pianificare e monitorare qualsiasi modello Dataflow fornito daGoogle Cloudo il tuo modello Dataflow personalizzato nella console.
Pianificazione
Console
Nella Google Cloud console, vai alla pagina Dataplex Universal Catalog.
Vai alla visualizzazione Processo.
Fai clic su Crea attività.
In Crea una pipeline Dataflow, fai clic su Crea pipeline Dataflow.
Scegli un lake Dataplex Universal Catalog.
Fornisci un nome per l'attività.
Scegli una regione in cui eseguire l'attività.
Scegli un modello Dataflow.
Compila i parametri obbligatori.
Fai clic su Continua.
Monitoraggio
Console
Nella Google Cloud console, vai alla pagina Dataplex Universal Catalog.
Vai alla visualizzazione Processo.
Fai clic su Pipeline Dataflow.
Filtra per nome del lago o della pipeline.