Data Engineering

dbt - Fondamenti

Progetto dbt, models, sources, refs, tests, documentazione, materializations (table, view, incremental), seeds

20 domande da colloquio·
Mid-Level
1

Cos'è dbt (data build tool)?

Risposta

dbt è uno strumento di trasformazione dati che permette di scrivere trasformazioni in SQL ed eseguirle in un data warehouse. Applica i principi di software engineering (versioning, tests, documentazione) al lavoro di trasformazione dati. dbt non gestisce l'estrazione né il caricamento (la E e la L di ELT), solo la trasformazione.

2

Qual è la struttura di base di un progetto dbt?

Risposta

Un progetto dbt contiene un file dbt_project.yml nella radice che definisce la configurazione del progetto. Le cartelle principali sono models (contenente file SQL), tests per test custom, macros per macro Jinja, seeds per file CSV, e snapshots per acquisizioni di dati storici. Il file profiles.yml (di solito fuori dal progetto) definisce le connessioni ai warehouse.

3

Qual è il ruolo del file profiles.yml in dbt?

Risposta

Il file profiles.yml contiene le informazioni di connessione ai data warehouse (BigQuery, Snowflake, Redshift, PostgreSQL, ecc.). Solitamente è memorizzato nella cartella ~/.dbt/ e non nel progetto per evitare di versionare credentials sensibili. Ogni profilo può avere più target (dev, prod) che permettono di passare facilmente tra ambienti.

4

Cos'è un model in dbt?

5

Qual è il ruolo della funzione ref() in dbt?

+17 domande da colloquio

Padroneggia Data Engineering per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis