hands-on lab

Best Practices for Organizing dbt Models

Advanced
1h 15m
103
Get guided in a real environmentPractice with a step-by-step scenario in a real, provisioned environment.
Learn and validateUse validations to check your solutions every step of the way.
See resultsTrack your knowledge and monitor your progress.
Lab description

If you are using dbt and working with a new or existing project, having a guideline to follow in order to create and organize your models is very important. This is crucial if your dbt project becomes bigger and bigger. In this scenario, having a weak project's structure could cause your project to become very hard to understand and work on.

When working with dbt models, you should know three main model types: staging (also named base), intermediate, and marts. In a small dbt project, you could not hear about intermediate models because few intermediate transformations and modeling need to be performed.

In this lab, you will understand what the three model types mentioned above mean, you will then create some dbt models and organize them following the best practices. You will finally build the dbt project to get the models built.

Learning Objectives

Upon completion of this lab, you will be able to:

  • Understand the main dbt model types
  • Organize dbt models following best practices

Intended Audience

  • Data analysts that need to organize a dbt project in a clear way
  • Developers that need to work on existing dbt projects

Prerequisites

To get the most from this lab, you should have basic knowledge of dbt. To get ready, you can use the following labs:

About the author
Avatar
Stefano Cascavilla
Junior Data Engineer
Students
39,248
Labs
106
Courses
2
Learning paths
10

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.

Covered topics
Lab steps
Understanding the Main dbt Model Types
Connecting to the dbt Web IDE
Creating dbt Staging Models
Creating dbt Intermediate Models
Creating dbt Marts Models
Building Your dbt Project