jaffle_shop
is a fictional ecommerce store. This dbt project transforms raw data from an app database into a customers and orders model ready for analytics.
What this repo is:
- A self-contained playground dbt project, useful for testing out scripts, and communicating some of the core dbt concepts.
What this repo is not:
- A tutorial — check out the Getting Started Tutorial for that. Notably, this repo contains some anti-patterns to make it self-contained, namely the use of seeds instead of sources.
- A demonstration of best practices — check out the dbt Learn Demo repo instead. We want to keep this project as simple as possible. As such, we chose not to implement:
- our standard file naming patterns (which make more sense on larger projects, rather than this five-model project)
- a pull request flow
- CI/CD integrations
- A demonstration of using dbt for a high-complex project, or a demo of advanced features (e.g. macros, packages, hooks, operations) — we're just trying to keep things simple here!
This repo contains seeds that includes some (fake) raw data from a fictional app along with some basic dbt models, tests, and docs for this data.
The raw data consists of customers, orders, and payments, with the following entity-relationship diagram:
If you're just starting your cloud data warehouse journey and are hungry to get started with dbt before your organization officially gets a data warehouse, you should check out this repo.
If you want to run 28 SQL operations with dbt in less than 1 second
, for free, and all on your local machine, you should check out this repo.
If you want an adrenaline rush from a process that used to take dbt newcomers 1 hour
and is now less than 1 minute
, you should check out this repo.
Verified GitHub Action on dbt Performance
Prerequisities: Python >= 3.5