One-Time Setup
One-time setup for the Arize File Importer Role and Snowflake Warehouse.Scroll down to the Dataset Setup if you’ve already completed the steps in this section.
-
Make sure you’re using the
securityadminSnowflake role, and create a Snowflake role calledARIZE_FILE_IMPORTER_ROLE. -
Create a Snowflake user called
ARIZE_FILE_IMPORTER-
Set the default role for the user as the
ARIZE_FILE_IMPORTER_ROLErole - Set the default warehouse for the user as the warehouse that was provisioned for Arize (see here if you have not done this yet)
-
Set the user type to
SERVICE
-
Set the default role for the user as the
-
Grant the
ARIZE_FILE_IMPORTER_ROLErole to theARIZE_FILE_IMPORTERuser
-
Set the
RSA_PUBLIC_KEYfor theARIZE_FILE_IMPORTERuser- You can find the RSA Public Key in the Arize UI when setting up the Snowflake import job.
- Grant the
ARIZE_FILE_IMPORTER_ROLEroleUSAGEon the warehouse provisioned for Arize.
Dataset Setup
Follow the below steps when configuring access for new tables/schemas for Arize.You can skip over steps 1 + 2 if you’ve already done those for the Snowflake database that contains your table/schema.
-
Create a Snowflake schema called
arizein your database if it doesn’t already exist.CREATE SCHEMA IF NOT EXISTS [DATABASE_NAME].arize;
-
Create a table within the
arizeschema calledarize_ingestion_keyswith the following columns:object_name[string],object_type[string],tag_name[string],tag_value[string]. This table is used to store the Arize Ingestion Keys. These keys act as challenge keys to prove ownership of Snowflake tables/schemas.
- Insert a record into the
arize_ingestion_keystable for the table/schema you want to give Arize access to. The record should contain the Snowflake table/schema name as theobject_name,tableorschemaas theobject_type,arize-ingestion-keyas thetag_name, and your Arize Ingestion Key (you can find this in the Arize UI when setting up the Snowflake import job) as thetag_value.
-
Grant the following permissions to the
ARIZE_FILE_IMPORTER_ROLE:-
USAGEon the database (skip this if done previously) -
USAGEon the Snowflake schema that contains the table with your data -
SELECTon the Snowflake table that contains your data -
USAGEon thearizeSnowflake schema (skip this if done previously) -
SELECTon thearize_ingestion_keysSnowflake table (skip this if done previously)
-
If you are still running into issues with connecting to Snowflake, please check your Snowflake network policy. You may need to whitelist the general Arize IPs found here.