Snowflake cloud data source
This article provides specific details about setting up the Snowflake cloud data source.
For a general overview of setting up a cloud data source, see Manage a cloud data source.
User role
To allow Tealium to poll data from only the selected Snowflake tables or views, create a custom user role with USAGE
privileges for the database, schema, warehouse, and table or view you want to connect to.
For more information, see Snowflake: Custom roles and Snowflake: Access control privileges.
Data types
The Snowflake data source supports all Snowflake data types. To ensure data is imported correctly, map the Snowflake data types according to the following guidelines:
Snowflake | Tealium |
---|---|
Numeric data types | Number attributes |
String and binary data types | String attributes |
Logical data types | Boolean attributes |
Date and time data types | Date attributes |
Arrays | Array of strings, array of numbers, or array of booleans |
Object, variant, geography, geometry, and vector data types | String attributes |
For more information about Snowflake data types, see Snowflake: Summary of Data Types.
Create a connection
You must have the following account information to create a connection to Snowflake:
- Hostname
- Connection warehouse
- Database name
- Database schema
- Connection role
- Snowflake username
It’s important to note that your connection information might be case sensitive depending on your Snowflake data account settings.
To configure a new connection, enter the following connection details.
- Snowflake Connection Configuration Name: Provide a name for the reusable connection configuration.
- Account Identifier: The Snowflake account identifier without the
http://
prefix in the following format:- Using a Snowflake account name:
ACCOUNT_NAME.snowflakecomputing.com
. - Using a Snowflake account locator in region:
ACCOUNT_LOCATOR.CLOUD_REGION_ID.CLOUD.snowflakecomputing.com
.
- Using a Snowflake account name:
- Connection Warehouse: The name of the Snowflake warehouse to use for this connection.
- Database Name: The name of the Snowflake database to connect to.
- Database Schema: The name of the Snowflake database schema to connect to.
- Connection Role: The role assigned to the user in Snowflake. This role must have
USAGE
privileges.
For more information, see Snowflake: Custom roles and Snowflake: Access control privileges.
Authentication
To authorize a connection using an RSA key pair, Tealium can generate an unencrypted key pair for you. Assign the generated public key to the Snowflake user account that requires access to the specified tables or views.
Select from the following key algorithms based on your security requirements: RSA-2048, RSA-3072, or RSA-4096.
After the key is generated, download the public key file and assign the key to the user in your cloud database. The key fingerprint is also provided if you need to verify that the user’s public key was assigned correctly.
- Enter the username of the user with access to your Snowflake database, schema, warehouse, and table or view.
- Generate a key-pair using one of the following encryption algorithms: RSA-2048, RSA-3072, RSA-4096.
- Download the public key file. The key is only the text between the lines
-----BEGIN PUBLIC KEY-----
and-----END PUBLIC KEY-----
. - Assign the public key to the user in Snowflake with the following command:
For more information, see Snowflake: Assign a public key to a Snowflake user.
ALTER USER your_username SET RSA_PUBLIC_KEY='your_public_key';
- Copy the key fingerprint if you want to verify that the key was assigned to the user correctly by following instructions at Snowflake: Verify the user’s public key fingerprint.
After you connect to Snowflake, select the data source table from the Table Selection list.
Query mode
For a general overview, see Query modes.
For the Timestamp + Incrementing and Timestamp modes, the selected timestamp column must be one of the following Snowflake data types: TIMESTAMP_LTZ
, TIMESTAMP_TZ
, or TIMESTAMP_NTZ
.
For more information, see the Snowflake: Date & time data types.
For the Incrementing mode, the selected numeric column must increment in value for every row added. A recommended definition for an auto-increment column is:
COL1 NUMBER AUTOINCREMENT START 1 INCREMENT 1
WHERE clause
For a general overview, see SQL Query.
The WHERE
clause does not support subqueries from multiple tables. To import data from multiple Snowflake tables, create a view in Snowflake and select the view in the data source configuration. For more information, see Snowflake: Overview of Views.
This page was last updated: June 17, 2025