Skip to main content
BI4ALL BI4ALL
  • Expertise
    • Artificial Intelligence
    • Data Strategy & Governance
    • Data Visualisation
    • Low Code & Automation
    • Modern BI & Big Data
    • R&D Software Engineering
    • PMO, BA & UX/ UI Design
  • Knowledge Centre
    • Blog
    • Industry
    • Customer Success
    • Tech Talks
  • About Us
    • Board
    • History
    • Partners
    • Awards
    • Media Centre
  • Careers
  • Contacts
English
GermanPortuguês
Last Page:
    Knowledge Center
  • What is DBT (Data Build Tool)

What is DBT (Data Build Tool)

Página Anterior: Blog
  • Knowledge Center
  • Blog
  • Fabric: nova plataforma de análise de dados
1 Junho 2023

Fabric: nova plataforma de análise de dados

Placeholder Image Alt
  • Knowledge Centre
  • What is DBT (Data Build Tool)
12 April 2024

What is DBT (Data Build Tool)

What is DBT (Data Build Tool)

Key takeways

DBT automates data transformation

Offers flexibility of implementation

Improves the management and documentation of analysis projects

DBT is a transformation workflow. The acronym stands for data build tool.

As such, DBT handles the T from ELT, but actually, it’s not dbt that does the transformation. You will need to have a Postgres DB, SQL Server, Redshift, Databricks, Snowflake, or GCP (and more) so that dbt can send your transformation processes to be executed by the DB engine.

DBT takes care of orchestration of the transformation processes (models), sending them to be executed on the DB engine you configured. That means that dbt uses SQL (where the SQL flavour depends on the engine you connect it to).

DBT enables data analysts and data engineers to automate the testing and deployment of the data transformation process. This is especially useful because many companies have increasingly complex business logic behind their reporting data. The dbt tool keeps a record of all changes made to the underlying logic and makes it easy to trace data and update or fix the pipeline through version control.

 

Why DBT

DBT adds much more than just being a transformation process. Follows a quick list of what you gain when using dbt:

Work with materialisations and then adjust for what you need

In DBT, you work with models that can be materialised as tables, views, incremental or ephemeral. To change the materialization type, you don’t need to rewrite the DDL like you are used to when working with SQL; you just need to change the configuration for that mode, and DBT takes care of it the next time it runs.

 

 

Data lineage from the start

A model is nothing more than an SQL statement, but with dbt, you can use the ref keyword to refer to an upstream model. This allows you to determine the execution order of your models, execute your transformations in stages, and extract the complete lineage of your dbt projects.

Document your models

With dbt, your documentation is done where it belongs, close to your models, and is version-controlled. Since the project uses the same git repo for versioning, you and your fellow developers will have access to all the documentation you and your fellow developers created locally.

You can easily share it also by publishing it to a static website like the one below if you use DBT core (open source) or simply by running DBT on DBT cloud (paid subscription)

 

Reuse your code and use control structures in your code

SQL files in dbt can contain Jinja, a lightweight templating language. Using Jinja in SQL provides a way to use control structures in your queries. For example, if statements and for loops. It is very useful to write repetitive SQL code like this:

 

In the above, imagine you have to write an SQL with a big list of payment methods. With Jinja, you could just add them to the list, and the for loop would take care of it.

You can also create macros that you or your colleagues can reuse according to the needs, thus eliminating the need to repeat code throughout the project.

Test your models

Tests are tightly integrated into the dbt framework. You can use assertions on your code (generic or custom) to test the results generated by a model and act accordingly, either failing the execution or just warning about it.

Additionally, you can integrate automated testing packages into dbt (like dbt-expectations), allowing you to expand the scope of tests you can execute on your models.

Use external packages to help your development

DBT’s support for external packages in SQL and Python allows you to build more complex and powerful data pipelines, like using Python’s pandas’ library to make data transformations, for instance:

 

Options to use DBT

DBT Core

DBT Core is the open-source version of DBT. You can install it on your local machine using Homebrew (macOs or linux) or pip using the adapter you plan to use. For instance, DBT -Postgres. You can also install it using Docker or from the source git code.

With DBT Core, you manage your dbt infrastructure, versioning, and, depending on your use case, an orchestration platform to run and monitor your jobs on a schedule.

Refer to https://docs.getdbt.com/docs/core/installation for installation instructions.

DBT Cloud

DBT Cloud is a cloud-based service that provides additional functionality on top of DBT Core.

You won’t have to worry about infrastructure, software installation and managing your database connections/credentials. It provides code versioning + collaboration, and sharing options. You will have access to automated scheduling and orchestration and advanced analytics and reporting, which will allow you to track the performance of your data transformations and identify issues and bottlenecks.

It does come with a cost and may not be necessary for all use cases.

Refer to https://www.getdbt.com/pricing/ for pricing on this offer.

Autor

Rui Custódio

Rui Custódio

Associate Specialist

Share

Suggested Content

Data-Driven Economy: How Data Redefines Decisions and Strategy Blog

Data-Driven Economy: How Data Redefines Decisions and Strategy

The data-driven economy is redefining how businesses, governments, and citizens create value — turning data into knowledge, efficiency, and sustainable innovation.

Data sovereignty: the strategic asset for businesses Blog

Data sovereignty: the strategic asset for businesses

In 2025, data sovereignty has become the new engine of competitiveness — turning massive volumes of information into innovation, efficiency, and strategic advantage.

Modern Anomaly Detection: Techniques, Challenges, and Ethical Considerations Blog

Modern Anomaly Detection: Techniques, Challenges, and Ethical Considerations

Anomaly Detection identifies unusual data patterns to prevent risks, using machine learning techniques

Optimising Performance in Microsoft Fabric Without Exceeding Capacity Limits Blog

Optimising Performance in Microsoft Fabric Without Exceeding Capacity Limits

Microsoft Fabric performance can be optimised through parallelism limits, scaling, workload scheduling, and monitoring without breaching capacity limits.

Metadata Frameworks in Microsoft Fabric: YAML Deployments (Part 3) Blog

Metadata Frameworks in Microsoft Fabric: YAML Deployments (Part 3)

YAML deployments in Microsoft Fabric use Azure DevOps for validation, environment structure, and pipelines with approvals, ensuring consistency.

Metadata Frameworks in Microsoft Fabric: Logging with Eventhouse (Part 2) Blog

Metadata Frameworks in Microsoft Fabric: Logging with Eventhouse (Part 2)

Logging in Microsoft Fabric with Eventhouse ensures centralised visibility and real-time analysis of pipelines, using KQL for scalable ingestion.

video title

Lets Start

Got a question? Want to start a new project?
Contact us

Menu

  • Expertise
  • Knowledge Centre
  • About Us
  • Careers
  • Contacts

Newsletter

Keep up to date and drive success with innovation
Newsletter

2025 All rights reserved

Privacy and Data Protection Policy Information Security Policy
URS - ISO 27001
URS - ISO 27701
Cookies Settings

BI4ALL may use cookies to memorise your login data, collect statistics to optimise the functionality of the website and to carry out marketing actions based on your interests.
You can customise the cookies used in .

Cookies options

These cookies are essential to provide services available on our website and to enable you to use certain features on our website. Without these cookies, we cannot provide certain services on our website.

These cookies are used to provide a more personalised experience on our website and to remember the choices you make when using our website.

These cookies are used to recognise visitors when they return to our website. This enables us to personalise the content of the website for you, greet you by name and remember your preferences (for example, your choice of language or region).

These cookies are used to protect the security of our website and your data. This includes cookies that are used to enable you to log into secure areas of our website.

These cookies are used to collect information to analyse traffic on our website and understand how visitors are using our website. For example, these cookies can measure factors such as time spent on the website or pages visited, which will allow us to understand how we can improve our website for users. The information collected through these measurement and performance cookies does not identify any individual visitor.

These cookies are used to deliver advertisements that are more relevant to you and your interests. They are also used to limit the number of times you see an advertisement and to help measure the effectiveness of an advertising campaign. They may be placed by us or by third parties with our permission. They remember that you have visited a website and this information is shared with other organisations, such as advertisers.

Política de Privacidade