Condividi tramite


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:

  1. Nel menu a discesa Tipo digitareselectdbt.

  2. 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.

  3. 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?.

  4. 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.

  5. Specificare un Magazzino catalog. Se non impostato, viene usata l'impostazione predefinita dell'area di lavoro.

  6. Specificare un magazzino schema. Per impostazione predefinita, viene usato il schemadefault.

  7. 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.

  8. 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.

  9. 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. vengono sostituiti come testo normale nel campo dei comandi dbt prima dell'esecuzione del comando. Per informazioni sul passaggio di values tra attività o riferimenti ai metadati dei processi, vedere Parametrizzare i processi.

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