A Practical Dive Into Data Build Tool (dbt)

DifficultyIntermediate
AVG Duration8h
Students54
Ratings
5/5
starstarstarstarstar
Content
111

Description

This learning path is designed to give you practical, hands-on experience with the Data Build Tool so you can use it confidently for creating data modeling and transforming projects.

We start by looking at how to create a dbt project, configure it to communicate with a database, and look at the most crucial feature dbt offers: models. We will then move to more advanced concepts such as Jinja macros, seeds uploading, and testing practices. We will then discuss how to organize a dbt project in a clear and expressive way.

Finally, your newly acquired skills will be put to the test with a lab challenge in which you will be assessed on your ability to perform tasks to create and test models, define schemas, and organize a dbt project.

By the end of this learning path, you're going to be confident when using the Data Build Tool for building data transformation processes. As an added bonus, this path also includes a lab playground in which you can have a go at using Data Build Tool to do whatever you want, and experiment with the tool.

Learning Objectives

  • Understand basic principles of Data Build Tool
  • Work with dbt models
  • Define models' schemas and tests
  • Upload static CSVs (seeds)
  • Organize a dbt project

Intended Audience

  • Data engineers with a focus on data modeling and transformations methodologies
  • Data analysts and Analytics engineers that need to extract useful insights from raw data

Prerequisites

To get the most out of this learning path, you should have basic knowledge of SQL. Please consider taking our Learn SQL - From Newbie to Ninja learning path to brush up on your SQL skills, if necessary.

Certificate

Your certificate for this learning path

Training Content

1
Hands-on Lab - Beginner - 40m
FREE
Create Your First dbt (Data Build Tool) Project
In this lab, you will learn what is dbt, why it is super helpful for data transformations, and you will install it and create your first dbt project.
2
Hands-on Lab - Beginner - 40m
FREE
Configure a dbt Profile and Define Sources
In this lab, you will configure a dbt profile to connect to a PostgreSQL database, and you will define sources to be used in a dbt project.
3
Hands-on Lab - Beginner - 1h
FREE
Create and Execute Your First dbt Models
In this lab, you will create your first dbt models. You will create a model starting from the dbt sources, and you will create another one starting from the existing model. You will then execute and materialize them in the PostgreSQL database.
4
Hands-on Lab - Beginner - 1h
FREE
Working With Full-Refresh dbt Models
In this lab, you will understand what are full-refresh dbt models, and you will create two models by using the table materialization type.
5
Hands-on Lab - Beginner - 1h
FREE
Working With Incremental dbt Models
In this lab, you will understand what are incremental dbt models, and you will create two models by using the incremental materialization type.
6
Hands-on Lab - Intermediate - 1h
FREE
Working With Ephemeral dbt Models
In this lab, you will understand what are ephemeral dbt models, and you will create an ephemeral dbt model that will be then leveraged by a full-refresh model. You will then review what dbt has materialized and what has not.
7
Hands-on Lab - Intermediate - 1h
FREE
Understand and Use dbt Jinja Macros
In this lab, you will understand what Jinja macros are and why they are helpful. You will then leverage the most important native macros source and ref, and you will create a custom macro.
8
Hands-on Lab - Intermediate - 1h
FREE
Understand and Work With dbt Seeds
In this lab, you will understand what dbt seeds are, you will create and use them, and will build a model based on a seed.
9
Hands-on Lab - Advanced - 1h 15m
FREE
Defining and Working With dbt Tests
In this lab, you will understand what are dbt tests. You will then create a custom test, and test your sources and a model both with native dbt tests and with the custom dbt test.
10
Hands-on Lab - Advanced - 1h 15m
FREE
Best Practices for Organizing dbt Models
In this lab, you will define some dbt models and you will organize them following best practices in order to keep and maintain a clear dbt project.
11
Hands-on Lab Challenge - Advanced - 2h
FREE
Data Build Tool Challenge
Demonstrate your dbt skills by performing tasks required to create and work with a dbt project.
12
Hands-on Lab - Intermediate - 4h
FREE
Data Build Tool Playground
Practice your dbt skills in a free-rein, empty dbt environment by creating and managing all the components and parts dbt offers.
About the Author
Students26609
Labs106
Courses2
Learning paths8

Stefano studies Computer Science and is passionate about technology. He loves working with Cloud services and learning all the best practices for them. Google Cloud Platform and Amazon Web Services are the cloud providers he prefers. He is a Google Cloud Certified Associate Cloud Engineer. Node.js is the programming language he always uses to code. When he's not involved in studying or working, Stefano loves riding his motorbike and exploring new places.