dbt (data build tool) is a command line tool that enables data analysts and engineers to transform data in their warehouse more effectively.
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Merge branch 'dev/grace-kelly' into fix/dbt-deps-issues Nov 13, 2018
.github pr feedback Jul 25, 2018
core Merge pull request #1202 from fishtown-analytics/feature/dynamic-data… Jan 16, 2019
etc Update readme and cleanup repo Dec 13, 2018
plugins PR feedback from #1202 Jan 16, 2019
test give root grant, split up test Jan 16, 2019
.bumpversion.cfg Split dbt into core and plugins Dec 14, 2018
.coveragerc Split dbt into core and plugins Dec 14, 2018
.dockerignore Tests, fixup ci Nov 12, 2018
.gitignore Merge pull request #1049 from mikekaminsky/feature/profile-env-var Oct 17, 2018
CHANGELOG.md Make config() accept database, add adapter-specifc aliasing Jan 8, 2019
CONTRIBUTING.md Updates contributing doc with new local installation instructions Jan 6, 2019
Dockerfile Tests, fixup ci Nov 12, 2018
License.md move markdown files back into place Jan 3, 2019
Makefile Fix for "table dropped by concurrent query" on Redshift (#825) Jul 9, 2018
README.md Update README.md Jan 19, 2019
RELEASE.md post-deploy Sep 20, 2018
appveyor.yml snowflake in windows (#276) Feb 7, 2017
converter.py package management (#542) Feb 27, 2018
dev_requirements.txt Add ipdb to dev requirements so it shows up in test docker containers… Dec 13, 2018
docker-compose.yml add snowflake support (#259) Jan 20, 2017
requirements.txt Split dbt into core and plugins Dec 14, 2018
test.env.sample Fix for "table dropped by concurrent query" on Redshift (#825) Jul 9, 2018
tox.ini Split dbt into core and plugins Dec 14, 2018

README.md

dbt logo

Code Climate CircleCI AppVeyor Slack

dbt (data build tool) enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications.

dbt is the T in ELT. Organize, cleanse, denormalize, filter, rename, and pre-aggregate the raw data in your warehouse so that it's ready for analysis.

dbt architecture

dbt can be used to aggregate pageviews into sessions, calculate ad spend ROI, or report on email campaign performance.

Understanding dbt

Analysts using dbt can transform their data by simply writing select statements, while dbt handles turning these statements into tables and views in a data warehouse.

These select statements, or "models", form a dbt project. Models frequently build on top of one another – dbt makes it easy to manage relationships between models, and visualize these relationships, as well as assure the quality of your transformations through testing.

dbt dag

Getting started

Find out more

Join thousands of analysts in the dbt community

Reporting bugs and contributing code

Code of Conduct

Everyone interacting in the dbt project's codebases, issue trackers, chat rooms, and mailing lists is expected to follow the PyPA Code of Conduct.