Snowflake

Pre-requisites

The only pre-requisite is that a user exists with permissions to access the table that you would like the Validio platform to ingest data from.

It is recommended that this user only has read-only access to the table.

Setting up a read-only user

The following are example commands to create a user with read-only access:

# Creating user
CREATE USER user1;

# Creating a role
CREATE ROLE read_only comment = 'This role has readonly access';

# Granting read-only access to the role on selected warehouse, schemas and tables
GRANT USAGE ON DATABASE VALIDIO_DB TO ROLE read_only;
GRANT USAGE ON SCHEMA VALIDIO_DB.DEMO_DATA TO ROLE read_only;
GRANT SELECT ON ALL TABLES IN SCHEMA VALIDIO_DB.DEMO_DATA TO ROLE read_only;
GRANT USAGE ON WAREHOUSE COMPUTE_WH TO ROLE read_only;
GRANT SELECT ON FUTURE TABLES IN SCHEMA VALIDIO_DB.DEMO_DATA TO ROLE read_only;

# Set the users role
GRANT ROLE read_only TO USER user1;
ALTER USER user1 SET default_role = read_only;

# Set a password for the user
ALTER USER user1 set password = 'Validio2022';

Snowflake configuration parameters

Field Required Notes
Name Identifier for the connector. Used when setting up pipelines.
Account Snowflake account identifier.
Role Role of the user account that will used by the Validio platform to ingest data from Snowflake.
Warehouse name Name of the Snowflake warehouse to ingest data from.
Database name Name of the database to ingest data from.
Username Username of the account that will be used by the Validio platform to access the Snowflake table.
Password Password of the account that will be used by the Validio platform to access the Snowflake table.
Schema name Optional, but highly recommended to specify. Schema that the table resides in. If not specified, the Validio platform will attempt to infer the schema name for the table. If there are tables in multiple schemas with the same name, this will cause the incorrect schema to be inferred.
Table name The table to ingest data from.
Polling interval value How often to query the database for new data. This value is combined with the unit in order to create a polling interval (e.g. a polling interval value of 2 with a unit of “hours” will poll every two hours).
Unit The time unit used for the polling interval value.
Incrementing column name The name of the column that will help the Validio platform identify and determine what records have not been read already. This can be an auto-incrementing column of type integer or a datetime/timestamp
Data since If the incrementing column is a timestamp, this specifies from which time to read the data from