Master LLMs with our FREE course in collaboration with Activeloop & Intel Disruptor Initiative. Join now!

Publication

[DBT] Override Default Schema with Custom Schema name [Tip-1]
Latest   Machine Learning

[DBT] Override Default Schema with Custom Schema name [Tip-1]

Last Updated on July 26, 2023 by Editorial Team

Author(s): Karthikeyan Siva Baskaran

Originally published on Towards AI.

Software Engineering

Problem

By default, DBT creates a model under the schema which is the combination of target_schema and custom_schema. But, there are scenarios where you want to create the schema using custom_schema only, to handle that we need to overwrite the default macro that creates the schema. By default, dbt uses generate_schema_name a macro to generate the schema.

Target Schema: Defined under Profiles.yml. The target schema represents the default schema that dbt will build objects into if the custom schema is not defined for the models.

Custom Schema: Defined under dbt_project.yml. You can use custom schemas in dbt to build models in a schema other than your target schema.

Source: https://docs.getdbt.com/docs/building-a-dbt-project/building-models/using-custom-schemas

Default generate_schema_name Macro

Solution

Custom generate_schema_name Macro

Create a file called override_default_macros.sql under the macros folder and input the below SQL.

If the custom_schema is not available for the specified model, then default_schema from profiles.yml will be taken.

The above same code is also maintained under this ever-growing git repository.

GitHub – karthikeyan-sivabaskaran/dbt-tips-and-tricks-series: This repo will keep growing to demo…

You can't perform that action at this time. You signed in with another tab or window. You signed out in another tab or…

github.com

I hope this article helped you to customise the schema name. If you like this blog, please share it with your teammates, friends, and clap U+1F44F in the range of 1 to 50 in Medium. You can clap up to 50 times per post.

Photo by GR Stocks on Unsplash

Happy Overriding!

This article is part of the DBT Tips and Tricks Series.

Join thousands of data leaders on the AI newsletter. Join over 80,000 subscribers and keep up to date with the latest developments in AI. From research to projects and ideas. If you are building an AI startup, an AI-related product, or a service, we invite you to consider becoming a sponsor.

Published via Towards AI

Feedback ↓