Wat is dbt en waarom Analytics Engineering de datastapel radicaal verandert
dbt brengt software engineering naar SQL: versiebeheer met Git, automatisch testen, documentatie automatisch gegenereerde en implementatiepijplijn. Ontdek wat analytics engineering is en wat de rol is van de analytics engineer en waarom dbt de standaard is geworden voor datatransformatie op Snowflake, BigQuery en Redshift.
Het probleem dat dbt oplost
Stel je een datawarehouse voor vol met SQL-query's die in de loop van drie jaar door verschillende analisten zijn geschreven.
Honderden gebelde weergaven final_v3_DEFINITIVO_bis, berekeningslogica gedupliceerd
tien verschillende plaatsen, geen tests om de datakwaliteit te garanderen, en geen documentatie
over wat die column werkelijk betekent net_revenue_adjusted.
Dit is voor de meeste teams het uitgangspunt voor 2026. En dat is ook precies zo het probleem dat dbt (tool voor het bouwen van gegevens) het is ontworpen om op te lossen.
dbt is geen nieuwe ETL-tool, het is geen pijplijnorkestrator en het is geen data magazijn. Het is een hulpmiddel transformatie: neemt gegevens over die al in het magazijn en transformeert deze in gebruiksklare analytische modellen, met behulp van SQL en praktijken van software-engineering.
ELT versus ETL: waarom de wereld is veranderd
Decennia lang was het dominante paradigma ETL: Extract, Transformeren, Laden. De data werd uit de bronnen gehaald en omgezet in een tussenlaag (vaak op dedicated servers) en vervolgens al in de definitieve vorm in het datawarehouse geladen.
De komst van clouddatawarehouses zoals Sneeuwvlokken, BigQuery e Amazone roodverschuiving hij zette deze logica op zijn kop. Deze systemen beschikken over rekenkracht vrijwel onbeperkt en zeer lage opslagkosten. Het heeft geen zin meer om data te transformeren Voor om ze te laden: het is beter om ze rauw te laden en te transformeren Na, rechtstreeks in de magazijn. Zo werd ELT geboren.
ELT versus ETL: het fundamentele verschil
- ETL: transformatie buiten het magazijn (dedicated server, Spark, Talend) — duur, rigide, moeilijk te debuggen
- ELT: Transformatie binnen het magazijn (native SQL) — schaalbaar, kosteneffectief, gemakkelijker te testen en te documenteren
- dbt is de ELT-tool bij uitstek: het behandelt de T van ELT met software-engineering
Wat is dbt in beton
dbt is een opdrachtregel- (en cloud-)tool waarmee u:
- Schrijf SQL-transformaties als Modellen waarvan een versie is gemaakt in Git
- Definiëren automatische afhankelijkheden tussen modellen met de macro
ref() - Toevoegen kwaliteitstesten naar de gegevens rechtstreeks in de code
- Automatisch genereren documentatie en afstammingsgrafiek
- Doe dit allemaal in één CI/CD-pijplijn
Een dbt-sjabloon is eenvoudigweg een SQL-bestand met een SELECT. dbt materialiseert het in het magazijn als weergave, tabel of incrementele tabel, afhankelijk van uw configuratie.
-- models/marts/finance/orders_daily.sql
-- dbt materializza questo come una tabella nel warehouse
SELECT
DATE_TRUNC('day', created_at) AS order_date,
SUM(total_amount) AS revenue,
COUNT(*) AS order_count,
AVG(total_amount) AS avg_order_value
FROM {{ ref('stg_orders') }} -- ref() crea la dipendenza
WHERE status = 'completed'
GROUP BY 1
Let op de {{ ref('stg_orders') }}: dbt weet dat dit model ervan afhangt
van stg_orders, bouwt automatisch de afhankelijkheidsgrafiek (DAG) en garandeert
dat de patronen in de juiste volgorde worden uitgevoerd.
De rol van de Analytics-ingenieur
De opkomst van schulden heeft een nieuwe professionele figuur gecreëerd: deanalytisch ingenieur. Het is het profiel halverwege tussen data-analist en data-ingenieur:
- Hij kent SQL net zo diep als een analist
- Pas software-engineeringpraktijken toe (Git, testen, CI/CD) als een ingenieur
- Bouwt en onderhoudt de datawarehouse-transformatielaag
- Samenwerken met data-analisten (die de modellen gebruiken) en data-ingenieurs (die de opnamepijplijnen beheren)
Volgens de Staat van data-engineering 2025, is de rol van analytics engineer gegroeid met 340% in de afgelopen drie jaar op LinkedIn, waardoor het een van de meest gezochte profielen in de datawereld is.
Het dbt-ecosysteem in 2026
dbt is niet alleen een hulpmiddel: het is een compleet ecosysteem geworden met twee hoofddistributies:
dbt Kern
De versie open source en gratis van dbt. Het wordt geïnstalleerd via pip, het werkt vanaf de lijn commando en integreert met elk CI/CD-systeem. Ondersteunt alle grote datawarehouses: Snowflake, BigQuery, Redshift, Databricks, DuckDB, PostgreSQL en nog veel meer via adapter.
dbt-wolk
De beheerde dienst van dbt Labs, het bedrijf achter dbt. Voegt een web-IDE, planner toe geïntegreerd, monitoring, dbt Explorer (geavanceerde lijn) en de dbt Semantic Layer voor consistente statistieken. Beschikbaar met een gratis abonnement voor ontwikkelaars en ondernemingsabonnementen van $ 100/maand voor teams.
De pijlers van het dbt-project
Een dbt-project heeft een standaardstructuur die orde brengt waar voorheen chaos heerste:
jaffle_shop/ # nome del progetto
├── dbt_project.yml # configurazione del progetto
├── profiles.yml # credenziali di connessione (locale)
├── models/
│ ├── staging/ # modelli vicini alla sorgente
│ │ ├── stg_orders.sql
│ │ ├── stg_customers.sql
│ ├── marts/ # modelli business-oriented
│ ├── finance/
│ │ └── orders_daily.sql
│ └── marketing/
│ └── customer_ltv.sql
├── tests/ # test SQL personalizzati
├── seeds/ # CSV statici come reference data
├── macros/ # funzioni SQL riutilizzabili
└── analyses/ # query ad hoc (non materializzate)
Deze gelaagde structuur (staging → intermediair → marts) is een best practice dbt bellen gelaagde architectuur:
- Staging: 1-op-1 met bronnen, gewoon hernoemen en typen
- Tussenliggend: complexe joins en aggregaties tussen staging-modellen
- Marten: Definitieve modellen klaar voor gebruik door BI en analytics
Testen en documentatie: de geweldige functies van dbt
Twee dbt-functies die de dataontwikkelingscyclus volledig transformeren:
Automatisch testen
Definieer tests rechtstreeks in het YAML-bestand dat bij elke sjabloon hoort:
# models/staging/schema.yml
models:
- name: stg_orders
columns:
- name: order_id
tests:
- unique
- not_null
- name: status
tests:
- accepted_values:
values: ['completed', 'pending', 'cancelled']
- name: customer_id
tests:
- not_null
- relationships:
to: ref('stg_customers')
field: customer_id
Met dbt test, voert dbt deze tests uit als SQL-query's in het magazijn en mislukt de pijplijn
als er iets mis is. Geen Python-code, geen externe raamwerken.
Zelf gegenereerde documentatie
Voeg beschrijvingen toe in hetzelfde YAML-bestand:
# models/marts/schema.yml
models:
- name: orders_daily
description: "Aggregazione giornaliera degli ordini completati"
columns:
- name: order_date
description: "Data dell'ordine, troncata al giorno"
- name: revenue
description: "Totale ricavi per il giorno, al netto dei resi"
dbt docs generate && dbt docs serve genereert een statische site met documentatie
compleet en de interactieve DAG die de afhankelijkheden tussen alle modellen toont. Elke kolom is
gedocumenteerd en herleidbaar tot de bron.
dbt in de moderne datastapel
dbt is doorgaans de T-laag van de stapel Moderne ELT:
- Inslikken: Airbyte-, Fivetran-, Stitch- of Python-scripts laden onbewerkte gegevens in het magazijn
- Opslag: Sneeuwvlok, BigQuery, Redshift, Databricks Delta Lake
- Transformatie: dbt transformeert ruwe data in analytische modellen
- BI & Analytics: Looker, Metabase, Tableau of notebooks gebruiken dbt-modellen
Anno 2026 is dbt aanwezig in de datastapel van ruim 30.000 bedrijven (dbt Labs data), van startups aan giganten als GitLab, JetBlue, Conde Nast en Shopify.
Waarom DGT leren in 2026
Concrete redenen om tijd te investeren in het leren van DGT:
- Vraag uit de markt: “dbt” verschijnt in 45% van de vacatures voor data-ingenieurs en analyse-ingenieur op LinkedIn in Europa
- Productiviteit: dbt-teams rapporteren een tijdsreductie van 60-70% tot het debuggen van datapijplijnen dankzij automatische tests
- Ecosysteem: Meer dan 200 dbt-pakketten op dbt Hub, inclusief dbt-utils (de bibliotheek standaard) en dbt-verwachtingen voor geavanceerde tests
- Waarneembaarheid: native integratie met Elementary, re_data en tools Waarneembaarheid van gegevens voor kwaliteitsbewaking in de productie
dbt is niet voor iedereen
dbt is zinvol als u al een clouddatawarehouse heeft en met SQL als primaire taal werkt. Het is geen vervanging voor Spark voor grootschalige transformaties op ongestructureerde data, en is ook niet geschikt een realtime streamingpijplijn (voor degenen die Flink, Kafka Streams of Spark Structured Streaming gebruiken). De goede plek van dbt is batchanalyse in SQL Warehouse.
Conclusies en volgende stappen
dbt heeft opnieuw gedefinieerd hoe datateams hun analysepijplijnen bouwen en onderhouden de volwassen praktijken van software-engineering – testen, versiebeheer, documentatie, CI/CD – in a wereld die al tientallen jaren zonder hen leeft.
De belangrijkste conclusie: dbt is geen niche-instrument voor grote ondernemingen. Het is toegankelijk, open-source en draait zelfs op één laptop met DuckDB als backend. De De leercurve is laag voor degenen die SQL kennen, de beloning is hoog.
In het volgende artikel in de serie zullen we een dbt Core-project helemaal opnieuw opzetten: we zullen dbt installeren, we zullen schrijven
de profiles.yml, zullen we onze eerste modellen maken en de ref() macro in actie
op een echte dataset.







