Snowflake
This Data Source enables you to use your Snowflake data with Propel. It provides an easy way to deploy an analytics API on top of Snowflake.
With the Snowflake Data Source, you can use any table to power your Data Pools and Metrics. Propel connects to the specified database and schema using a provided role, warehouse, and user. You can apply the least-privilege principle only to expose the necessary tables and columns. We recommend creating a dedicated role, user, and warehouse for Propel.
Set up guide
Follow our step-by-step Snowflake setup guide to connect your Snowflake data warehouse with Propel.
Supported Sync behaviors
- Append only: Syncs new records. It ignore updates or deletes. Append is suitable for inmutable event data.
Supported data stuctures
Below are the Snowflake data structures that Propel supports.
Name | Description | Sync Behavior | Status |
---|---|---|---|
Table | A Snowflake table. | Append only | Generally available |
View | A Snowflake view. | Not supported | Not supported |
Materialized view | A Snowflake materialized view. | Not supported | Not supported |
Table
To use the table as a Data Source it must meet the following requirements:
- The table must be an append-only table, which means only new records will be synced. Updated or deleted records will be ignored. Typically tables containing event logs, audit logs, or other analytical data that is not expected to change.
- The table must have change tracking enabled. Follow this guide to enable change tracking on a Snowflake table.
- The table must have at least one
DATE
,DATETIME
,TIMESTAMP
,TIMESTAMP_LTZ
,TIMESTAMP_NTZ
, orTIMESTAMP_TZ
column. - The table must have a unique identifier column.
Use the TIMESTAMP_LTZ
type for date time columns as it specifies the timezone.
Usage
Once you create your Snowflake Data Source, you can then create Data Pools from your Snowflake tables.
- Click on Data Pools on the left-hand side menu.
- Click on the "New Data Pool" button.
- Select a name and description for your Data Pool.
- Select your Snowflake Data Source.
- Select the Snowflake table you want to use.
- Click the "Create" button.
After you create your Data Pool, you can define Metrics with your Data Pool's data.
Propel's guides to Snowflake as a Data Source
API reference documentation
Below is the relevant API documentation for the Snowflake Data Source.
Objects
Enums
Inputs
- Snowflake Connection Settings Input
- Partial Snowflake Connection Settings Input
- Create Snowflake Data Source Input
- Modify Snowflake Data Source Input
Queries
Mutations
- Create Snowflake Data Source
- Modify Snowflake Data Source
- Delete Data Source by ID
- Delete Data Source by unique name
Limits
No limits at this point.
Related blog posts
- How to build a Snowflake API
- How to Deduplicate Events in Snowflake with dbt
- How to set up development and production environments in Snowflake
- How to get your data from an AWS RDS database into Snowflake
- How Does Snowflake Storage Work? (Databases & Schemas)
- What Is the Difference Between a Database and a Warehouse in Snowflake?
- How to build Snowflake data apps with GraphQL
- What Is a Multi-Cluster Virtual Warehouse in Snowflake Data Platform?
- How to build in-product analytics with Snowflake and GraphQL
- What Are Warehouses in Snowflake Data Analytics Platform?