Skip to main content

dbt for Data Engineers

1h 52m 55s
English
Paid

dbt (data build tool) is a data transformation tool that prioritizes SQL. It facilitates simple and transparent transformation, testing, and documentation of data directly within the warehouse. With dbt, teams can efficiently create reliable datasets for analytics, machine learning, and business processes without exporting data externally. This is why dbt is becoming a key tool for data engineers, and this course is the perfect starting point for mastering it.

Introduction to dbt

Before diving into the practice, you will gain an understanding of:

  • The difference between ETL and ELT,
  • The challenges faced by modern data pipelines,
  • The distinctions and key advantages of dbt Core and dbt Cloud.

Setup: Snowflake, dbt Core, and GitHub

As part of the practical setup, you will undertake the following:

  • Create a repository on GitHub,
  • Create an account in dbt Cloud and set up a data warehouse in Snowflake,
  • Perform basic project configuration in dbt and define the model structure using SQL or Python files.

Building Data Pipelines in dbt

You will develop a chain of models (pipelines) using an e-commerce dataset, employing dbt Core, dbt Cloud, and Snowflake to execute step-by-step data transformation.

Materializations in dbt

Following the model building, you will learn how to store transformation results in various forms:

  • Tables,
  • Views,
  • Incremental or ephemeral models.

Furthermore, you will discover how external and internal dbt sources function and the dependencies between them.

Testing dbt Models

Testing models is essential for ensuring data reliability. You will learn to conduct:

  • Generic and bespoke tests,
  • Quality and consistency checks of data at all pipeline stages.

Deployment and Scheduling Models

Once models are operational locally, you will learn how to:

  • Share them with your team,
  • Execute them on a schedule,
  • Update models automatically.

You will delve into practices for deployment and scheduling in dbt Cloud.

Advanced dbt Features

At the course's conclusion, you will:

  • Establish CI/CD processes directly in dbt Cloud,
  • Generate comprehensive project documentation and learn how to utilize it within a team,
  • Acquire knowledge on best practices for managing dbt in a production environment.

What the Course Includes

  • Source code repository (GitHub)
  • E-commerce dataset
  • Step-by-step video tutorials
  • A selection of useful links and additional materials

Requirements

  • Basic knowledge of relational databases
  • Proficiency in working with SQL
  • Recommended: basic experience with Git and cloud platforms (Snowflake, dbt Cloud)

About the Author: Andreas Kretz

Andreas Kretz thumbnail

I am a senior data engineer and trainer, a tech enthusiast, and a father. For more than ten years, I have been passionate about Data Engineering. Initially, I became a self-taught data engineer and then led a team of data engineers at a large company. When I realized the great demand for education in this field, I followed my passion and founded my own Data Engineering Academy. Since then, I have helped over 2,000 students achieve their goals.

Watch Online 23 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 23 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Introduction
All Course Lessons (23)
#Lesson TitleDurationAccess
1
Introduction Demo
02:24
2
Modern data experience
05:43
3
Introduction to dbt
04:39
4
Goals of this course
04:51
5
Snowflake preparation
07:30
6
Loading data into Snowflake
09:36
7
Setup dbt Core
03:33
8
Preparing the GitHub repository
06:17
9
dbt models & materialization explained
05:49
10
Creating your first sql model
05:29
11
Working with custom schemas
04:36
12
Creating your first python model
01:56
13
dbt sources
04:04
14
Configuring sources
04:21
15
Working with seed files
03:20
16
Generic tests
03:26
17
Tests with Great Expectations
02:50
18
Writing custom generic tests
07:26
19
dbt cloud setup
05:15
20
creating dbt jobs
10:53
21
CI/CD automation with dbt cloud and GitHub
07:39
22
Documenation in dbt
01:18
23
Conclusion
00:00
Unlock unlimited learning

Get instant access to all 22 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription