- Airtable
- BigQuery
- Braze
- Calculated Property
- ClickHouse
- Customer.io
- dbt
- Google Sheets
- HubSpot
- Intercom
- Iterable
- Klaviyo
- Mailchimp
- Mailjet
- Marketo
- Mixpanel
- Mongo
- MySQL
- OneSignal
- Pipedrive
- Postgres
- Redshift
- Sailthru
- Salesforce
- SendGrid
- Snowflake
- SQLite
- Zendesk
Snowflake
Last Updated: 2022-01-27NPM: @grouparoo/snowflake
GitHub: @grouparoo/snowflake
Overview
Snowflake is a popular cloud computing-based data warehousing solution. It is built to support storage, processing, and analysis. Specifically, Snowflake is designed to help companies manage and look for insights provided by large datasets. You can use Grouparoo to sync data from Snowflake to any of the Destinations we provide plugins for.
Sources
Source Name | Description |
Snowflake Import Table | Import or update Records from a Snowflake database table. |
Snowflake Import Query | Import or update records via a custom Snowflake query. |
Setup
In order to use Snowflake, you’ll need a Snowflake account. Your account name can be found in the URL when you are logged into Snowflake. It will consist of at least two parts. There will be a third part if you use either Microsoft Azure or Amazon Web Services as your Cloud provider.
The first part of the account information you'll need for setup is a unique alphanumeric identifier, the second part is a regional designation, and the optional third part will indicate the cloud service provider. For those using Snowflake’s cloud, this will not be part of the Account name needed to set up a connection.
App
To connect Snowflake to Grouparoo, you create an App to tell Grouparoo how to connect to Snowflake. This specifies the connection details for the database you want to sync data to or from.
App Options
In Grouparoo, provide the options that best describe how you would like to connect to Snowflake.
App Option | Description |
Account (required) | The full name of the account (provided by Snowflake). It is the subdomain you use to access Snowflake. |
User Name(required) | Snowflake user login name to connect with. |
Password (required) | Password for the given username. |
Warehouse (required) | The Snowflake warehouse to use. |
Database (required) | The Snowflake database to use. |
Schema | The Snowflake schema. This field will default to ‘PUBLIC’ if not manually set to a different schema. |
Snowflake Import Table
This source reads from a single schema or table in your Snowflake database using a primary or foreign key. Properties are generated from this table from row values or aggregations of row values.
Options
There is one required option to select for this type of Source.
Option Name | Description |
Table (required) | The table to scan |
Mapping
Defining Mappings is a critical part of the process. This step tells Grouparoo which Record to associate with the imported data.
If you are using Snowflake Import Table as the primary source, choose the Snowflake column that uniquely identifies Records in your Model. This will often be the primary key of the table that represents your Model. The Property mapped to this column will be assigned as the Model's Primary Key.
In secondary sources, choose the Snowflake column that ties this table to your primary source. This will often be a foreign key in your table.
Schedule
Create a schedule to actively pull new data from this Snowflake table. If the recurring option is not selected, you are creating a one-time sync. There are also options to confirm records exist when running a schedule and to enable refresh. When Recurring is selected, you will see a field for entering the frequency, in minutes, of recurrence.
Options
Option Name | Description |
column (required) | Select which column Grouparoo should check to look for new data. Often, this would be a column like “UPDATED_AT” or a kind of time-stamp. Grouparoo remembers the most recent values so it can be based on an incremental count as well. |
Filters
If there is a subset of rows data you want to specifically include or exclude from your Snowflake database table, create a Filter. Only rows matching your criteria will be imported.
Properties
Properties populate your Records with data from your Snowflake table based on table columns. Create a Property to be able to use row data in Grouparoo.
Options
Option Name | Description |
Column Name (required) | Choose the column that will be the source of data for this Grouparoo Property. |
Aggregation Method (required) | Aggregation methods determine how to use the row values in the table. Snowflake supports the standard set of aggregation methods for table sources. |
Filters
If there is a subset of rows data you want to specifically include or exclude from your Snowflake database table, create a Filter. Only rows matching your criteria will be imported.
Snowflake Import Query
A Query Source works differently than a table-based source in that there are no options to choose in setting up the connection to this type of source. A Query Source is a more flexible way to build properties.
This type of Source provides the ability to write custom SQL code to extract data from one or more tables and import the result into Grouparoo.
Notes
We strive to keep our documentation accurate, easy to use, and up to date. If you notice that something has changed or is not addressed in the process of setting up your Grouparoo connection with Snowflake
, please let us know by reaching out to help@grouparoo.com.
As always, if you need support using Grouparoo, reach out to community members in our Slack channel. We are always happy to help!
Join us on SlackHaving Problems?
If you are having trouble, visit the list of common issues or open a Github issue to get support.
- Airtable
- BigQuery
- Braze
- Calculated Property
- ClickHouse
- Customer.io
- dbt
- Google Sheets
- HubSpot
- Intercom
- Iterable
- Klaviyo
- Mailchimp
- Mailjet
- Marketo
- Mixpanel
- Mongo
- MySQL
- OneSignal
- Pipedrive
- Postgres
- Redshift
- Sailthru
- Salesforce
- SendGrid
- Snowflake
- SQLite
- Zendesk