Zoomdata Version

Managing the Snowflake Connector

The Zoomdata Snowflake connector lets you access the data available in Snowflake storage for visualization and exploration using the Zoomdata client. The Zoomdata Snowflake connector supports whatever Snowflake version is currently available in the cloud.

Before you can establish a connection from Zoomdata to Snowflake storage, a connector server needs to be installed and configured. See Managing Connectors for general instructions and Connecting to Snowflake for details specific to the Snowflake connector.

After the connector has been set up, you can create data source configurations that specify the necessary connection information and identify the data you want to use. See Managing Data Source Configurations for more information. After data sources are configured, they can be used to create dashboards and charts from your data. See Creating Dashboards and Creating Charts.

Zoomdata Feature Support

The Snowflake connector supports all Zoomdata features, except for the following features:

  • User delegation

Connecting to Snowflake

The version 3.6.15 JDBC driver is included with the Snowflake connector, but you can download a newer version from https://repo1.maven.org/maven2/net/snowflake/snowflake-jdbc/. See Adding a JDBC Driver.

When setting up a connection to Snowflake, you need to provide the following:

  • The name of the connection
  • The JDBC URL.
  • Each Snowflake connection must be associated with a database. It may be the database specified in the JDBC URL or the default data base of the connecting user (when no database is specified in the JDBC URL).
  • The username and password. Only simple username and password authentication is supported.

Snowflake officially supports each of its client versions for a minimum of two years: https://docs.snowflake.net/manuals/release-notes/requirements.html#support-policy. If the JDBC driver is not updated for two years, the Snowflake connector may stop working. Zoomdata regularly updates the JDBC driver, however if you do not update your Snowflake connector for a long time, you may encounter problems. If this happens, you can manually update the JDBC driver yourself. Zoomdata provides it in /opt/zoomdata/lib/edc-snowflake.

Snowflake Time Field Conversion

The Zoomdata Snowflake connector converts date-time fields with data types of TIMESTAMP_TZ (a Snowflake data type) to Coordinated Universal Time (UTC) format. The connector also sets the session timezone to UTC format, which means that all Snowflake fields that use the Snowflake local timezone data type TIMESTAMP_LTZ are also converted to UTC format.

Configuring the Snowflake Clustering Ratio Threshold

Snowflake does not have an index, but supports micro-partitions and clustering keys instead. It uses a clustering ratio (ranging from 0 to 100) for a table to indicate whether the clustering state of the table has improved or deteriorated as a result of data changes in the table. A higher clustering ratio indicates that the Snowflake table is more optimally clustered. A value of 100 for the clustering ratio indicates that the table is fully clustered. See Understanding Snowflake Table Structures.

In order to define playability of date or numeric fields the Zoomdata Snowflake connector uses the clustering ratio of these fields. If the clustering ratio of a field is equal to or greater than a set threshold value, it is considered to be playable. The default clustering threshold ratio is 50, but can be changed by changing the following Snowflake configuration property in the Snowflake properties file (edc-snowflake.properties):

snowflake.metadata-detection.fast-range-queries.min-clustering-ratio=<nnn>

See Connector Properties.

The clustering ratio threshold allows Zoomdata to enable playback and live mode for all fields that are optimally clustered and disable it for all fields that are not. Adjust the threshold value or recluster your Snowflake tables to better handle intermediate cases.

Was this topic helpful?