Welcome to your new dbt project!
Try running the following commands:
- dbt run
- dbt test
- Learn more about dbt in the docs
- Check out Discourse for commonly asked questions and answers
- Join the chat on Slack for live discussions and support
- Find dbt events near you
- Check out the blog for the latest news on dbt's development and best practices
- Models are the basic building block of the business logic.
- Materialized as tables and views.
- They live in SQL files in the
modelsfolder - Models can reference each other and use templates and macros
- Four materializations (View, Table, Incremental, CTEs)
- Seeds are local files that you upload to the data warehouse from dbt
- Sources is an abstraction layer on top of your input tables
- Source freshness can be checked automatically.
- Check if the data is stale or not
- How dbt handles Type 2 SCD
- 2 strategies (Timestamp and Check)
- Singular tests are SQL queries stored in tests which are expected to return an empty resultset.
- 4 built-in generic tests (Unique, not null, accepted values, relationships)
- For implementing our own generic tests
- Find and install third party dbt packages.
- Jinja templates created in the macros folder.
- Can be used in model definitions and tests
- A special macro, called test, can be used for implementing custom generic tests
- Adhoc queries which we may not want to include in our modelling
- on_run_start: Executed at the start of dbt {run, seed, snapshot}
- on_run_end: Executed at the end of dbt {run, seed, snapshot}
- pre-hook: Executed before a model/seed/snapshot is built
- post-hook: Executed after a model/seed/snapshot is built