SNOWFLAKE
type: snowflakeCloud-native data warehouse with automatic scaling. Popular for analytics workloads and as a central data platform.
DVT SUPPORT
read in federation models
materialize federation results
run full dbt projects against it
dvt seed --target loads here
DVT supports Snowflakebecause both dbt and Sling do: dbt drives standard materializations when it's your default target, Sling moves data in and out during federation. Connectivity for both layers is checked with dvt debug --all.
PREREQUISITES
Driver: snowflake-connector-python — installed automatically by:
dvt sync
CONFIGURATION FIELDS
| FIELD | TYPE | REQUIRED | DEFAULT | DESCRIPTION |
|---|---|---|---|---|
| type | string | yes | — | Must be `snowflake` |
| account | string | yes | — | Snowflake account identifier (e.g., xy12345.us-east-1) |
| user | string | yes | — | Snowflake username |
| password | string | yes | — | Snowflake password |
| database | string | yes | — | Database name |
| schema | string | yes | — | Schema name |
| warehouse | string | yes | — | Virtual warehouse name |
| role | string | no | — | Snowflake role |
| threads | integer | no | 4 | Number of parallel threads |
PROFILES.YML EXAMPLE
my_project:
target: sf_dev
outputs:
sf_dev:
type: snowflake
account: xy12345.us-east-1
user: DVT_USER
password: "{{ env_var('SF_PASSWORD') }}"
database: ANALYTICS
schema: PUBLIC
warehouse: COMPUTE_WH
role: TRANSFORMERSOURCES.YML EXAMPLE
sources:
- name: cloud_warehouse
meta:
connection: sf_dev
database: RAW_DATA
schema: PUBLIC
tables:
- name: sales_fact
- name: customer_dimDBT ADAPTER FEATURES
When Snowflake is your default target, every standard dbt model runs through the official dbt adapter — all of its documented capabilities apply unchanged:
MATERIALIZATIONS
tableviewincrementalephemeraldynamic_tablef_tablef_incrementalINCREMENTAL STRATEGIES
mergeappenddelete+insertmicrobatchNOTABLE CONFIGS
- ▸per-model warehouse
- ▸query_tag
- ▸clustering keys
- ▸transient tables
- ▸secure views
- ▸copy_grants
FEDERATION INCREMENTAL STRATEGIES
Strategies available when this engine is the target of a f_incremental model:
KNOWN LIMITATIONS
- ⚠Case-sensitive identifiers — use UPPER() in source references