Welcome to the dbt Labs demo dbt project! We use the TPCH dataset to create a sample project to emulate what a production project might look like!
_ __
____ ___ ____ _(_)___ ____/ /__ ____ ___ ____
/ __ `__ \/ __ `/ / __ \ / __ / _ \/ __ `__ \/ __ \
/ / / / / / /_/ / / / / / / /_/ / __/ / / / / / /_/ /
/_/ /_/ /_/\__,_/_/_/ /_/ \__,_/\___/_/ /_/ /_/\____/
- dbt-external-tables: Manage database objects that read data external to the warehouse within dbt. See
models/demo_examples/external_sources.yml
. - Lifecycle Notifications: See examples of dbt Cloud Job Lifecycle Notifications here.
- Pivot tables: One example of creating a pivot table using Snowflake syntax, another example using Jinja. See
models/aggregates/agg_yearly_*.sql
.
The codegen package can be run via the IDE, by clicking the "Compile" button, or in the command line.
The example below shows how we can generate yml for a particular source:
dbt run-operation generate_source --args '{"schema_name": "tpch_sf001", "database_name": "raw", "generate_columns": "true", "include_descriptions": "true"}'
Paste in the snippets below in your IDE and click "Compile".
Generates lightweight YAML for a Source
{{
codegen.generate_source(
schema_name='tpch_sf001',
database_name='raw',
generate_columns='true',
include_descriptions='true',
)
}}
Generates SQL for a staging model
{{
codegen.generate_base_model(
source_name='tpch',
table_name='orders',
)
}}
Generates the YAML for a given model
{{
codegen.generate_model_yaml(
model_name='stg_tpch_orders'
)
}}
Generates the YAML for multiple models
{{
generate_models_yaml(
model_names=[
'stg_tpch_orders',
'stg_tpch_parts',
'stg_tpch_regions',
]
)
}}
change