Best Practices for Organizing dbt Models

Lab Steps

lock
Understanding the Main dbt Model Types
lock
Connecting to the dbt Web IDE
lock
Creating dbt Staging Models
lock
Creating dbt Intermediate Models
lock
Creating dbt Marts Models
lock
Building Your dbt Project

The hands-on lab is part of this learning path

Ready for the real environment experience?

DifficultyAdvanced
Time Limit1h 15m
Students17

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
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.