Elabora i dati utilizzando i modelli

Dataplex fornisce modelli, basati su Dataflow, per eseguire le attività di elaborazione dati più comuni, come l'importazione dati, l'elaborazione e la gestione del ciclo di vita dei dati. Questa guida descrive come configurare ed eseguire modelli di elaborazione dati.

Prima di iniziare

I modelli Dataplex sono basati su Dataflow. Prima di utilizzare i modelli, abilita le API Dataflow.

Abilita le API Dataflow

Note

  • Tutti i modelli supportano le opzioni per le pipeline Dataflow comuni.

  • Dataplex utilizza le pipeline di dati per pianificare le attività definite dai modelli.

  • Puoi visualizzare solo le attività che pianifichi tramite Dataplex nella pagina Dataplex della console Google Cloud.

Modello: converti i dati non elaborati in dati selezionati

Il modello di conversione del formato file Dataplex converte i dati di un asset Cloud Storage Dataplex o di un elenco di entità Dataplex archiviate nei formati CSV o JSON in dati in formato Parquet o Avro in un altro asset Dataplex. Il layout della partizione viene conservato nella conversione. Supporta inoltre la compressione dei file di output.

Parametri del modello

Parametro Descrizione
inputAssetOrEntitiesList L'asset Dataplex o le entità Dataplex che contengono i file di input. Questo parametro deve avere 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 essere nel formato: PARQUET o AVRO.
outputAsset Il nome dell'asset Dataplex che contiene il bucket Cloud Storage in cui verranno archiviati i file di output. Questo parametro deve avere 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.
outputFileCompression (Facoltativo) 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 PARQUET file.
writeDisposition (Facoltativo) Specifica l'azione che si verifica se esiste già un file di destinazione. Il valore predefinito di 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 produrre un errore se esiste già almeno un file di destinazione).
updateDataplexMetadata

(Facoltativo) Se aggiornare i metadati Dataplex per le entità appena create. Il valore predefinito di questo parametro è false.

Se l'opzione è abilitata, la pipeline copierà automaticamente lo schema dall'origine alle entità Dataplex di destinazione e il Dataplex Discovery automatizzato non verrà eseguito per loro. Utilizza questo flag se lo schema dei dati di origine (non elaborati) è gestito da Dataplex.

Esegui il modello

Console

  1. Nella console Google Cloud, vai alla pagina Dataplex:

    Vai a Dataplex

  2. Vai alla visualizzazione Process (Procedura).

  3. Fai clic su Crea attività.

  4. In Converti in formati curati, fai clic su Crea attività.

  5. Scegli un lake Dataplex.

  6. Specifica un nome per l'attività.

  7. Scegli una regione per l'esecuzione dell'attività.

  8. Compila i parametri richiesti.

  9. Fai clic su Continua.

gcloud

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 output asset ID

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

API REST

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 output asset ID

Invia una richiesta POST HTTP:

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",
 }
}

Modello: livelli di dati da un asset BigQuery a un asset Cloud Storage

Il modello Dataplex BigQuery in Cloud Storage copia i dati da un asset Dataplex BigQuery a un asset Dataplex Cloud Storage in un layout e formati compatibili con 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 dati precedenti a una data di modifica specificata e, facoltativamente, di eliminare i dati da BigQuery dopo una copia riuscita.

Durante la copia di tabelle partizionate da BigQuery a Cloud Storage, il modello crea partizioni in stile Hive nel bucket Cloud Storage. Quando scrivi in Cloud Storage, il modello crea una nuova chiave di partizione aggiungendo il suffisso _pid alla colonna di partizione esistente. È necessaria per accedere ai dati in BigQuery come tabella esterna. Attualmente, la chiave di partizione in stile Hive non può essere uguale a una colonna esistente in BigQuery. Di conseguenza, la tabella copiata, vista da BigQuery come tabella esterna, ha una colonna aggiuntiva per la chiave di partizione. I dati rimanenti vengono conservati così come sono.

Quando copi tabelle partizionate da BigQuery a Cloud Storage:

  • Il modello crea partizioni in stile Hive nel bucket Cloud Storage. Attualmente, la chiave di partizione in stile Hive non può essere uguale a una colonna esistente in BigQuery. 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 Discovery registra il tipo di partizione come string durante la creazione di una tabella BigQuery (e una tabella in Dataproc Metastore). Ciò potrebbe influire sui filtri di partizione esistenti.

Esiste un limite di circa 300 tabelle e partizioni che possono essere trasformate in una singola esecuzione di modello. 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 ordinare i dati. Questo parametro deve contenere un nome di asset Dataplex 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 per il bucket Cloud Storage in cui assegnare i dati. Questo parametro deve essere nel formato projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name>.
tables (Facoltativo) Un elenco separato da virgole di tabelle BigQuery da aggiungere al livello. Se non viene fornito alcun elenco, tutte le tabelle verranno ordinate in livelli. Le tabelle devono essere specificate solo dal nome (nessun prefisso di progetto/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 per l'ultima volta prima di questa data/ora. Per le tabelle non partizionate, sposta la tabella se la tabella è stata modificata per l'ultima volta prima di questa data/ora. Se non specificato, sposta tutte le tabelle/partizioni. Per impostazione predefinita, data e ora vengono analizzate nel fuso orario predefinito, ma sono supportati i suffissi facoltativi Z e +HH:mm. Questo parametro deve essere nel formato YYYY-MM-DD, YYYY-MM-DDTHH:mm:ss o YYYY-MM-DDTHH:mm:ss+03:00. Sono supportate anche data e ora relative e devono rispettare il formato -PnDTnHnMn.nS (deve iniziare con -P, che indica un'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) 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 PARQUET file.
deleteSourceData (Facoltativo) 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 le partizioni con ID partizione che corrisponde a questa espressione regolare. Se non viene fornito alcun valore, per impostazione predefinita questo parametro elaborerà tutti i valori.
writeDisposition (Facoltativo) Specifica l'azione che si verifica se esiste già un file di destinazione, ovvero una o più tabelle/partizioni sono già state pre-livellate. Il valore predefinito di questo parametro è SKIP, che consente di elaborare solo le tabelle/partizioni che non erano già pre-livellate. Altri valori per il parametro possono essere OVERWRITE (sovrascrivi tutti i file esistenti) o FAIL (non elaborare nulla e produrre un errore se esiste già almeno un file di destinazione).
enforceSamePartitionKey

(Facoltativo) Se applicare la stessa chiave di partizione. A causa di una limitazione di BigQuery, la chiave di partizione (nel percorso del file) in una tabella esterna partizionata non può avere 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 è impostata sul nome della colonna di partizione originale e la colonna nel file viene rinominata. Se il valore è false, la chiave di partizione viene rinominata.

Ad esempio, se la tabella originale è partizionata in una colonna denominata TS e enforceSamePartitionKey=true, il percorso del file di destinazione è gs://<bucket>/TS=<partition ID>/<file> e la colonna viene rinominata come TS_pkey nel file. In questo modo, le query esistenti possono essere eseguite sulle stesse partizioni nella tabella precedente o in quella nuova.

Se enforceSamePartitionKey=false, il percorso del file di destinazione è gs://<bucket>/TS_pid=<partition ID>/<file>, ma il nome della colonna viene mantenuto su TS nel file.

updateDataplexMetadata

(Facoltativo) Se aggiornare i metadati Dataplex per le entità appena create. Il valore predefinito di questo parametro è false.

Se l'opzione è abilitata, la pipeline copierà automaticamente lo schema dall'origine alle entità Dataplex di destinazione e il Dataplex Discovery automatizzato non verrà eseguito per loro. Utilizza questo flag se gestisci lo schema delle tabelle BigQuery di origine.

Esegui il modello

Console

  1. Nella console Google Cloud, vai alla pagina Dataplex:

    Vai a Dataplex

  2. Vai alla visualizzazione Process (Procedura).

  3. Fai clic su Crea attività.

  4. In Tier from BQ to GCS Assets, fai clic su Crea attività.

  5. Scegli un lake Dataplex.

  6. Specifica un nome per l'attività.

  7. Scegli una regione per l'esecuzione dell'attività.

  8. Compila i parametri richiesti.

  9. Fai clic su Continua.

gcloud

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 asset
name for the source BigQuery dataset, or the dataset ID
DESTINATION_ASSET_NAME: your Dataplex asset name for
the destination Cloud Storage bucket

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

API REST

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 asset
name for the source BigQuery dataset, or the dataset ID
DESTINATION_ASSET_NAME: your Dataplex asset name for
the destination Cloud Storage bucket
REGION_NAME: region in which to run the job

Invia una richiesta POST HTTP:

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",
 }
}

Pianifica altri modelli Dataflow forniti da Google Cloud o personalizzati

Dataplex consente di pianificare e monitorare qualsiasi modello Dataflow fornito da Google Cloud o il tuo modello Dataflow personalizzato nella console.

Pianificazione

Console

  1. Nella console Google Cloud, vai alla pagina Dataplex:

    Vai a Dataplex

  2. Vai alla visualizzazione Process (Procedura).

  3. Fai clic su Crea attività.

  4. In Crea una pipeline Dataflow, fai clic su Crea pipeline Dataflow.

  5. Scegli un lake Dataplex.

  6. Specifica un nome per l'attività.

  7. Scegli una regione per l'esecuzione dell'attività.

  8. Scegli un modello Dataflow.

  9. Compila i parametri richiesti.

  10. Fai clic su Continua.

Monitora

Console

  1. Nella console Google Cloud, vai alla pagina Dataplex:

    Vai a Dataplex

  2. Vai alla visualizzazione Process (Procedura).

  3. Fai clic su pipeline Dataflow.

  4. Filtra per nome lake o pipeline.