attività dbt per i processi
Usare l'attività dbt per configurare ed eseguire progetti dbt in Azure Databricks.
Importante
Quando le attività dbt vengono eseguite, Databricks inserisce DBT_ACCESS_TOKEN
per l'entità di sicurezza configurata nel campo Esegui come.
Configurare un'attività dbt
Aggiungere un'attività dbt
dalla scheda Attività nell'interfaccia utente processi eseguendo le operazioni seguenti:
Nel menu a discesa Tipo digitareselect
dbt
.Nel menu a discesa origine, è possibile selezionare selectl'area di lavoro per usare un progetto dbt che si trova in una cartella dell'area di lavoro di Azure Databricks, oppure il provider Git per un progetto che si trova in un repository Git remoto.
Se si selectWorkspace, usare lo strumento di spostamento file fornito per select la directory Project.
Sei un selectprovider Git, fai clic su Modifica per inserire le informazioni Git nel repository del progetto Git. Vedere Usare Git con i processi.
Se il progetto non si trova nella directory radice del repository, usare il campo Directory progetto per specificare il percorso.
Le caselle di testo comandi dbt sono predefinite con i comandi dbt deps, dbt seed e dbt run. I comandi forniti vengono eseguiti in ordine sequenziale. Aggiungere removeo modificare questi campi in base alle esigenze del flusso di lavoro. Vedere Che cosa sono i comandi dbt?.
In SQL warehouse, select un'istanza di SQL warehouse per eseguire l'SQL generato da dbt. Il menu a discesa SQL Warehouse mostra solo i warehouse serverless e SQL PRO.
Specificare un Magazzino catalog. Se non impostato, viene usata l'impostazione predefinita dell'area di lavoro.
Specificare un magazzino schema. Per impostazione predefinita, viene usato il schema
default
.Scegliere Calcolo dell'interfaccia della riga di comando dbt per eseguire dbt Core. Databricks consiglia di usare l’elaborazione serverless per i processi oppure un calcolo processi classico configurati con un cluster a nodo singolo.
Specificare una versione
dbt-databricks
per l'attività.Se usi il calcolo
Serverless
, usa il campo Ambiente e Librerie per select, modificare o aggiungere un nuovo ambiente. Vedere Installare le dipendenze del notebook.Per tutte le altre configurazioni di calcolo, il campo Cataloghi dipendenti viene popolato con
dbt-databricks>=1.0.0,<2.0.0
per impostazione predefinita. Eliminare questa impostazione e + Aggiungere un catalogo PyPi per associare una versione.Nota
Databricks consiglia di associare le attività dbt a una versione specifica del pacchetto dbt-databricks per assicurarsi che la stessa versione venga usata per le esecuzioni di sviluppo e produzione. Databricks consiglia la versione 1.6.0 o successiva del pacchetto dbt-databricks.
Fare clic su Crea attività.
Che cosa sono i comandi dbt?
Il campo dei comandi dbt consente di specificare i comandi da eseguire usando l'interfaccia della riga di comando (CLI) dbt. Per informazioni dettagliate sull'interfaccia della riga di comando dbt, vedere la documentazione dbt.
Controllare la documentazione dbt per i comandi supportati dalla versione specificata di dbt.
Passare le opzioni ai comandi dbt
La sintassi di selezione del nodo dbt consente di specificare le risorse da includere o escludere in una determinata esecuzione. Comandi come run
e build
accettano flag, inclusi --select
e --exclude
. Per una descrizione completa, vedere la documentazione sulla panoramica della sintassi dbt.
Flag di configurazione aggiuntivi controllano il modo in cui dbt esegue il progetto. Vedere le opzioni della riga di comando column nella documentazione ufficiale di dbt per un list di flag disponibili.
Alcuni flag accettano argomenti posizionali. Alcuni argomenti per i flag sono stringhe. Per esempi e spiegazioni, vedere la documentazione dbt.
Passare variabili ai comandi dbt
Usare il flag --vars
per passare values statici o dinamici ai comandi dbt nei campi indicati da e.
Si passa un codice JSON delimitato da virgolette singole a --vars
. Tutte le chiavi e values nel codice JSON devono essere delimitate da virgolette doppie, come nell'esempio seguente:
dbt run --vars '{"volume_path": "/Volumes/path/to/data", "date": "2024/08/16"}'
Esempi di comandi dbt parametrizzati
È possibile fare riferimento all'attività values, al lavoro parameterse al lavoro dinamico parameters durante l'uso di dbt.
Questi esempi presuppongono che il processo seguente parameters sia stato configurato:
Nome parametro | Valore parametro |
---|---|
volume_path |
/Volumes/path/to/data |
table_name |
my_table |
select_clause |
--select "tag:nightly" |
dbt_refresh |
--full-refresh |
Gli esempi seguenti illustrano i modi validi per fare riferimento a questi parameters:
dbt run '{"volume_path": "{{job.parameters.volume_path}}"}'
dbt run --select "{{job.parameters.table_name}}"
dbt run {{job.parameters.select_clause}}
dbt run {{job.parameters.dbt_refresh}}
dbt run '{"volume_path": "{{job.parameters.volume_path}}"}' {{job.parameters.dbt_refresh}}
È possibile fare anche riferimento al dinamico parameters e all'attività values, come negli esempi seguenti:
dbt run --vars '{"date": "{{job.start_time.iso_date}}"}'
dbt run --vars '{"sales_count": "{{tasks.sales_task.values.sales_count}}"}'