Skip to content

anandgupta42/snowflake-dbt-demo-project

 
 

Repository files navigation

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!

                    _              __                   
   ____ ___  ____ _(_)___     ____/ /__  ____ ___  ____ 
  / __ `__ \/ __ `/ / __ \   / __  / _ \/ __ `__ \/ __ \
 / / / / / / /_/ / / / / /  / /_/ /  __/ / / / / / /_/ /
/_/ /_/ /_/\__,_/_/_/ /_/   \__,_/\___/_/ /_/ /_/\____/ 

Special demos

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

Codegen Examples

The codegen package can be run via the IDE, by clicking the "Compile" button, or in the command line.

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"}'

IDE

Paste in the snippets below in your IDE and click "Compile".

codegen.generate_source

Generates lightweight YAML for a Source

{{
    codegen.generate_source(
        schema_name='tpch_sf001',
        database_name='raw',
        generate_columns='true',
        include_descriptions='true',
    )
}}

codegen.generate_base_model

Generates SQL for a staging model

{{
    codegen.generate_base_model(
        source_name='tpch',
        table_name='orders',
    )
}}

codegen.generate_model_yaml

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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 97.5%
  • PLpgSQL 2.5%