Skip to main content

Snowflake

Snowflake datasources use the Snowflake native driver for high-performance native data transfer. No ODBC installation is required.
See Supported Data Formats for database source categories and schema column types supported on Snowflake connections.

Connection configuration

URI format

Required fields

Optional fields

Environment variables

Example connection

The Snowflake native driver uses Snowflake’s native result set format. Data is returned as batches directly from the Snowflake service with no row-by-row conversion.

Dataset configuration (data_args)

Required fields

Optional fields

table_options entry

Each entry in table_options describes a table to query:

Complete example

Connection

Dataset

Snowflake identifiers are uppercase by default. Use uppercase names in your schema definition and data_args fields to match Snowflake’s metadata, unless the objects were created with double-quoted lowercase names.

Warehouse and role configuration

The warehouse and role fields control compute resources and access permissions:

Warehouse

The warehouse determines the compute cluster used to execute queries. Choose a warehouse sized appropriately for your query workload:
Ensure the specified warehouse is set to auto-resume, or queries will fail when the warehouse is suspended. CloudQuant Data Liberator does not issue ALTER WAREHOUSE ... RESUME commands.

Role

The role determines which database objects are accessible:
Create a dedicated read-only role for CloudQuant Data Liberator connections rather than using accountadmin. Grant SELECT on the required databases and schemas to this role.

Debug logging

Enable verbose debug logging for Snowflake connections to diagnose connectivity or query issues:
This produces detailed logs including connection negotiation, query execution timing, and data batch transfer metrics.

Driver and dependencies

The Snowflake native driver is bundled with CloudQuant Data Liberator. No additional driver installation is needed on the host system. All communication uses HTTPS on port 443.

Troubleshooting

Account identifier format

The account field must include the region if your account is not in the default AWS us-west-2 region:

Authentication failed (390100)

Verify the username, password, and account identifier. Snowflake passwords are case-sensitive. If multi-factor authentication (MFA) is enabled for the user, you may need to use a service account without MFA.

Warehouse is suspended

If queries fail with a warehouse suspension error, ensure the warehouse is configured with AUTO_RESUME = TRUE:

Role does not have access

Verify the role has the required privileges:

Network connectivity

Snowflake connections require HTTPS (port 443) access to *.snowflakecomputing.com. Ensure firewalls and proxy servers allow this traffic.

Slow queries

  • Increase batch_size for large result sets (up to 100000).
  • Ensure Snowflake clustering keys align with your datetime and key columns.
  • Use an appropriately sized warehouse (e.g., MEDIUM or LARGE) for large datasets.
  • Check that the warehouse is not queued behind other workloads using Snowflake’s query history.