Samenvatting
dbt State laat runs alleen gewijzigde modellen bouwen, met lagere compute en sneller itereren als resultaat.
dbt State beperkt onnodige runs
dbt State onthoudt wat eerdere runs hebben toegepast en vergelijkt dat met de huidige situatie. In productie verplaatst de techniek freshness-logica van jobschema’s naar modelcode, met `lag_tolerance` en voorwaarden voor wat als nieuwe brondata geldt.
Die regels werken op map-, submap- of modelniveau. dbt Labs bracht daarmee een intern proces terug van 19 jobs naar 2. Bij Fanatics leverde een pilot 25-30% modelhergebruik en ongeveer 15% besparing op Snowflake op.
In development ondersteunen auto-cloning en auto-deferral het bouwen van één model zonder alle upstream-modellen opnieuw te berekenen. `state:modified` werkt zonder handmatig beheer van `manifest.json`. Zero-copy cloning haalt een bestaande tabel uit een andere omgeving, terwijl `dbt explain` uitlegt waarom een model wel of niet draaide.
Waarom dbt State verschil maakt
dbt State splitst twee vragen die vaak door elkaar lopen: moet een model opnieuw worden uitgevoerd, en is brondata vers genoeg? State richt zich op de eerste vraag. Het vervangt geen source-freshness-alerting; die functie staat nog op de roadmap.
Ook gelden duidelijke grenzen. Views bouwen opnieuw wanneer hun onderliggende query wijzigt, en snapshots vallen volledig buiten State. Dat maakt een controle per objecttype nodig voordat teams bestaande workflows aanpassen.
De aanpak raakt zowel productie als ontwikkeling. Productieteams krijgen modelniveaubeleid voor uitvoering, terwijl analytics engineers en AI-agents wijzigingen kunnen testen zonder upstream-berekeningen te herhalen. De betrokkenheid van Reuben McCreanor van dbt Labs en Iaroslav Zeigerman van Fivetran laat zien dat dbt State zowel product- als enginekennis vraagt.
Concrete takeaway voor dbt State
Breng eerst in kaart welke modellen opnieuw draaien zonder upstream-wijziging. Test daarna `lag_tolerance`, auto-deferral en zero-copy cloning op een afgebakend project, en meet compute, doorlooptijd en modelhergebruik afzonderlijk. Houd freshness-alerting daarnaast als los proces in stand.
Verdiep je kennis
Wat is Business Intelligence? Uitleg, voorbeelden en tools
Wat is business intelligence (BI)? Leer over de definitie, de BI-stack, praktijkvoorbeelden, populaire tools en de trend...
KennisbankData-driven werken — Hoe begin je als organisatie?
Leer hoe je als organisatie data-driven gaat werken. Van data-volwassenheid tot cultuurverandering: een praktisch stappe...
KennisbankData governance in het MKB — Praktische aanpak
Wat is data governance en hoe pak je het aan als MKB-organisatie? Een praktisch stappenplan met aandacht voor AVG-compli...