Snowflake

Authentification, configuration options, and content for Snowflake.

Authentification

Snowflake connections require the following elements:

  • Account name: the first part of your Snowflake url, including region: account-name.region .snowflakecomputing.com
  • Username and password used for your Snowflake console. You may prefer to create a separate username and password for Dataform to use - please contact our team if you need help.
  • Warehouse name: Click "Warehouses" from within your Snowflake console to view a list of warehouses. Any warehouse in your account will work with any database.
  • Database: Click "Databases" from within your Snowflake console to view a list of databases.
You may also need to whitelist Dataform's IP addresses to let Dataform access your Snowflake instance. Please follow these instructions. Dataform's IP addresses are 35.233.106.210 and 104.196.10.242 .

Configuration options

Querying different databases

You can both read from and publish to two separate snowflake databases within a single Dataform project. For example, you may have a database called RAW_SOURCE that contains raw data loaded in your warehouse and a database called ANALYTICS in which you create data tables you use for analytics and reporting.

You can define a default database in your dataform.json file.

1
2
3
4
5
6
{
    "warehouse": "snowflake",
    "defaultSchema": "dataform",
    "assertionSchema": "dataform_assertions",
    "defaultDatabase": "ANALYTICS"
}

You can then override the default database in the config block of your SQLX files.

1
2
3
4
config {
    type: "table",
    database: “RAW_SOURCE”
}

Using separate databases for development and production

You can configure separate databases for development and production in your environment.json file. The process is described on this page.

Dataform web features for Snowflake

Real time query validation

Dataform validates the compiled script you are editing against Snowflake in real time. It will let you know if the query is valid (or won’t run) before having to run it.

Sample Dataform project with Snowflake

We prepared the following sample project of a fictional ecommerce store using using Snowflake.

Sample bigquery Dataform project DAG
Dependency tree of the Snowflake sample project

Getting help

If you are using Dataform web and are having trouble connecting to Snowflake, please reach out to us by using the intercom messenger icon at the bottom right of the app.

If you have other questions related to Snowflake, you can join our slack community and ask question on the #Snowflake channel.

What's next

Google BigQuery

Authentification, configuration options, and content for BigQuery.

Amazon Redshift

Authentification, configuration options, and content for Redshift.

Azure SQL Data Warehouse

Authentification and configuration options for Azure SQL Data Warehouse.

Postgres

Authentification and configuration options for Postgres.