How to Count Things with dbt - Data Build Tool
summary
Counts are deceptively hard so dbt treats counting as reproducible engineering: it compiles Jinja into SQL and materializes models as views, tables or incremental upserts (merge/CTAS/temp-table swap) on warehouses like Snowflake, BigQuery, Redshift, Firebolt, Presto and Spark. It enforces uniqueness and not‑null tests, documents models, builds a DAG of dependencies (projects scale to ~5,000 models), and lets users add macros and custom materializations; this workflow is production‑ready and widely used to avoid inconsistent counts.
AI-written summary · about
chapters (23)
- 0:00Introduction
- 2:21Understaffed Data Analysts
- 4:50Business Logic
- 9:24The Paradigm Shift
- 11:48Flexibility
- 13:37Data warehouses
- 14:53What is dbt
- 15:52How dbt works
- 19:01Data loader processes
- 20:47Why did we build dbt
- 22:06dbt workflow
- 22:56Why dont we support SQL
- 26:54How dbt builds the dag
- 28:37Materializations
- 34:04Attributes
- 35:28Table Materialization
- 37:28Snowflake BigQuery
- 38:04Incremental Build
- 39:24Merge Syntax
- 44:19Test for Uniqueness
- 44:59Macros
- 51:51Next Frontier
- 56:04Questions
related talks
49mdbt: A Software Engineering Approach To The Analytics Workflow
19mRobust CI Workflow with dbt for Data Warehouse Optimization
01h 42mFall in Love with Data Transformation: DBT as Your Weapon
51mFrom SQLi Hammer to Full-fledged Software Engineer
23mDelivering Modern Data Stacks With dbt to Operationalise Analytics
28mdbt-score: a linter for your dbt model metadata
28mHow Open Source Enables Innovation A Case Study with dbt and Lightdash
49mSilja Märdla | Data Track | Compass AI & Data Summit 2025
