Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Usare l'attività dbt per configurare ed eseguire progetti dbt in Azure Databricks.
Importante
Quando le attività dbt vengono eseguite, Databricks inietta il DBT_ACCESS_TOKEN per il principale configurato nel campo Esegui come.
Configurare un'attività dbt
Aggiungere un'attività dbt dalla scheda Attività nell'interfaccia utente dei lavori eseguendo le operazioni seguenti:
Fare clic su Aggiungi attività.
Immettere un nome nel campo Nome attività .
Nel menu a discesa Tipo selezionare
dbt.Nel menu a discesa Source è possibile selezionare Workspace per usare un progetto dbt che si trova in una cartella dell'area di lavoro Azure Databricks o Git provider per un progetto che si trova in un repository Git remoto.
Se si seleziona Workspace, usare lo strumento di spostamento file fornito per selezionare la directory Project.
Se si seleziona il provider Git, fare clic su Modifica per immettere le informazioni Git per il repository del progetto. Vedere Usare Git con processi Lakeflow.
Se il progetto non si trova nella directory radice del repository, usare il campo Project Directory 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, rimuovere o modificare questi campi in base alle esigenze del proprio flusso di lavoro. Vedere Che cosa sono i comandi dbt?.
In SQL Warehouse selezionare 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 catalogo magazzino. Se non impostato, viene usata l'impostazione predefinita dell'area di lavoro.
Specificare lo schema del magazzino. Per impostazione predefinita, viene usato lo 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'elaborazione classica configurata con un cluster a nodo singolo.
Specificare una versione
dbt-databricksper l'attività.Se si utilizza il calcolo
Serverless, usare il campo Ambiente e Librerie per selezionare, modificare o aggiungere un nuovo ambiente. Vedi Configurare l'ambiente serverless.Per tutte le altre configurazioni di calcolo, il campo Cataloghi dipendenti viene popolato con
dbt-databricks>=1.0.0,<2.0.0per impostazione predefinita. Eliminare questa impostazione e + Aggiungere una libreria PyPi per fissare 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. Per un elenco dei flag disponibili, vedere la colonna Opzioni della riga di comando nella documentazione dbt ufficiale.
Alcuni flag accettano argomenti posizionali. Alcuni parametri per i flag sono dati di tipo stringa. Per esempi e spiegazioni, vedere la documentazione dbt.
Passare variabili ai comandi dbt
Usare il flag --vars per passare valori statici o dinamici ai comandi nei campi dei comandi dbt.
Si passa un codice JSON delimitato da virgolette singole a --vars. Tutte le chiavi e i valori in JSON devono essere delimitati 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 a valori di attività, parametri di processo e parametri di processo dinamici quando si usa dbt. I valori vengono sostituiti come testo normale nel campo dei comandi dbt prima dell'esecuzione del comando. Per informazioni sul passaggio di valori tra attività o sui riferimenti ai metadati dei processi, vedere Parametrizzare i processi.
Questi esempi presuppongono che siano stati configurati i parametri di processo seguenti:
| Nome del parametro | Il valore del 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 tali parametri:
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}}
Inoltre, è possibile fare riferimento a parametri dinamici e valori di attività, come negli esempi seguenti:
dbt run --vars '{"date": "{{job.start_time.iso_date}}"}'
dbt run --vars '{"sales_count": "{{tasks.sales_task.values.sales_count}}"}'