Skip to main content

Connecting Snowflake on AWS to Verodat

Follow our setup guide to connect your Snowflake data warehouse to Verodat

To connect Snowflake to Verodat, you need the following:

  1. A Snowflake account with the appropriate permissions to create a user and warehouse for Verodat.

  2. Verodat role with Workspace Admin permissions.

Step 1: Configure your Snowflake Account

If you don't already have a Snowflake account, there are a few things to consider before you get started.

  1. Cloud storage connections: You will be asked to select a cloud storage account to connect your Snowflake account to. There are two options here:

    1. If you already have a cloud database: you can host Snowflake on any existing AWS, Google or Azure databases using these guides:

    2. If you do not have a cloud database: you can select a cloud service provider when signing up to Snowflake.

Step 2: Configure your Snowflake Account

  1. Select Enterprise as your edition.

  2. Choose AWS as your preferred cloud provider.

  3. Select your preferred region.


  4. Verify your email address and activate your account

  5. Add an email address, password, and confirm the password to create an account. If you're having trouble, you can find more info here.



Step 3: Set up tables in Snowflake for Verodat

  1. Choose Snowflake warehouse type. We recommend starting out with Extra Small. You should create an exclusive warehouse for Verodat.

    IMPORTANT: Verodat operations will never contend with your queries for resources. You will have to pay the cost of running the warehouse.

  2. Copy the following script to a new worksheet and select the All Queries checkbox:

    begin;

    -- create variables for user / password / role / warehouse / database (needs to be uppercase for objects)

    set role_name = 'Verodat_SF_ROLE';

    set user_name = 'Verodat_SF_USER';

    set user_password = 'password123';

    set warehouse_name = 'Verodat_Workspace_WAREHOUSE';

    set database_name = 'Verodat_Workspace_DATABASE';

    -- change role to securityadmin for user / role steps

    use role securityadmin;

    -- create role for Verodat

    create role if not exists identifier($role_name);

    grant role identifier($role_name) to role SYSADMIN;

    -- create a user for Verodat

    create user if not exists identifier($user_name)

    password = $user_password

    default_role = $role_name

    default_warehouse = $warehouse_name;

    grant role identifier($role_name) to user identifier($user_name);

    -- change role to sysadmin for warehouse / database steps

    use role sysadmin;

    -- create a warehouse for Verodat

    create warehouse if not exists identifier($warehouse_name)

    warehouse_size = xsmall

    warehouse_type = standard

    auto_suspend = 60

    auto_resume = true

    initially_suspended = true;

    -- create database for Verodat

    create database if not exists identifier($database_name);

    -- grant Verodat role access to warehouse

    grant USAGE

    on warehouse identifier($warehouse_name)

    to role identifier($role_name);

    -- grant Verodat access to database

    grant CREATE SCHEMA, MONITOR, USAGE

    on database identifier($database_name)

    to role identifier($role_name);

    -- change role to ACCOUNTADMIN for STORAGE INTEGRATION support (only needed for Snowflake on GCP)

    use role ACCOUNTADMIN;

    grant CREATE INTEGRATION on account to role identifier($role_name);

    use role sysadmin;

    commit;


  3. Replace the default VERODAT_ROLE, VERODAT_DATABASE, VERODAT_USER, and "password123" values with values that conform to your specific naming conventions for those resources.

  4. Run the script. This will createa a user, a database, and three different schemas in Snowflake for Verodat to use at Design, Staging and Live stages.

  5. Get account url, by navigating to account left bottom, select account, current region and copying the account url.

Step 4: Connect with the Verodat Team to connect your Snowflake license

Did this answer your question?