Snowflake

Last Updated: 2022-01-27

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 NameDescription
Snowflake Import TableImport or update Records from a Snowflake database table.
Snowflake Import QueryImport 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.

Snowflake Setup

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.

Snowflake App Options

App OptionDescription
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.
SchemaThe 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.

Snowflake Table Import Options

Option NameDescription
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.

Snowflake Import Table Mapping

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

Snowflake Import Table Schedule

Option NameDescription
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.

Snowflake Import Table Property

Options

Option NameDescription
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 Slack