
Prerequisites
To follow this guide, you need:- A Snowflake account with access to the target tables
- Permissions to create users and roles in your Snowflake account
- A warehouse provisioned for running queries
- An Openlayer project with monitoring mode enabled
Setup Guide
Step 1: Create a dedicated user and role
In Snowflake, create a role and user for Openlayer. This role will be used to run queries securely. Run the following in a SQL worksheet, replacing placeholders:Step 2: Grant role permissions
The Openlayer role must haveUSAGE
on the warehouse, database, and schema, and SELECT
on the target tables.
Step 3: Connect inside Openlayer
In your Openlayer workspace:- Go to Data sources and select Snowflake.
- Click Connect.
- Fill in the fields:
- Snowflake user: the Snowflake username
- Snowflake role: the role with permissions
- Snowflake account: your account identifier (e.g.
xy12345.us-east-1
) - Snowflake warehouse: the warehouse to run queries
- Snowflake private key: the private key corresponding to the public key set on the Snowflake user
- Name: a descriptive label for this connection

Step 4: Configure your table
After the connection is created, select the table to monitor:- Database: name of the database
- Schema: schema containing the table
- Table: table name
- Timestamp column: column used to order/filter data for monitoring windows
- Unique id column: column used to identify unique rows for monitoring windows (recommended)
- Data source name: a descriptive name in Openlayer
Optional: ML-specific settings
If the table contains ML outputs, you can provide additional context:- Class names
- Feature names
- Categorical feature names
Troubleshooting
- Permission errors → verify your role has
USAGE
on the database/schema/warehouse andSELECT
on the table. - Key errors → check that your public key is registered to the Snowflake user and that you are providing the correct private key.
- Empty results → confirm the timestamp column is populated and the right table is selected.