Installation
Install the Snowflake connector:Authentication Methods
Snowflake supports multiple authentication methods:- Username/Password (default)
- JWT (Key Pair Authentication)
- External Browser (SSO)
- Okta
Configuration
Username/Password Authentication
JWT (Key Pair) Authentication
Use public/private key pair authentication for enhanced security.connection.yaml
External Browser (SSO)
Use browser-based SSO authentication.connection.yaml
Okta Authentication
connection.yaml
Configuration Parameters
Snowflake account identifier (e.g.,
abc12345.us-east-1 or orgname-accountname)Snowflake username
Database name to connect to
Warehouse name to use for queries
Role to use for the session
Default schema to use
Authentication method:
userpass, snowflake_jwt, externalbrowser, or oktaNumber of result batches to prefetch for improved performance
Username/Password Parameters
Snowflake password
JWT Parameters
Private key for JWT authentication (PEM format)
Passphrase for the encrypted private key
External Browser Parameters
Cache SSO token for faster subsequent connections
Okta Parameters
Full Okta URL for authentication (e.g.,
https://your-org.okta.com)Proxy Configuration
Connect through an authenticated proxy server:connection.yaml
Proxy Parameters
Proxy server hostname
Proxy server port
Proxy authentication username
Proxy authentication password
Proxy protocol (http or https)
Features
Type Mapping
Snowflake types are mapped to Evidence types:- Numbers: INTEGER, BIGINT, SMALLINT, NUMBER, DECIMAL, NUMERIC, FLOAT, DOUBLE, REAL
- Strings: VARCHAR, CHAR, STRING, TEXT, TIME
- Dates: TIMESTAMP, TIMESTAMP_LTZ, TIMESTAMP_NTZ, TIMESTAMP_TZ, DATE
- Booleans: BOOLEAN
Column Name Normalization
Snowflake returns column names in uppercase by default. The connector automatically converts them to lowercase for consistency with Evidence conventions.Streaming Results
Queries are executed with streaming enabled, processing results in batches for memory-efficient handling of large datasets.Example Query
Create a SQL file in your Evidence project:queries/monthly_sales.sql
Troubleshooting
Account identifier format
Account identifier format
Snowflake account identifiers can use different formats:
- Legacy:
abc12345.us-east-1 - Organization:
orgname-accountname
Warehouse not started
Warehouse not started
Ensure the specified warehouse is running or has auto-resume enabled. Cold warehouse starts may cause initial query delays.
JWT key format
JWT key format
Private keys must be in PEM format. Generate key pairs using:
Role permissions
Role permissions
Ensure the specified role has:
- USAGE on the warehouse
- USAGE on the database and schema
- SELECT on required tables/views