Snowflake Connectivity

As with many similar cloud-based databases, CloverDX offers two ways of connecting to Snowflake. The first way is via JDBC driver that allows the largest flexibility to run various queries on the target Snowflake instance. The only requirement in this case is a driver that can be downloaded directly from Snowflake’s website and then added to Designer or Server.

The second way – using a custom subgraph-based connector – allows you to connect to your Snowflake instance and perform high-performance bulk data loads that use all the power Snowflake offers.

CloverDX illustration database-107


CloverDX illustration database-108

High-performance Snowflake Data Loads

The bulk writer component is implemented as a subgraph (a user-defined component) that performs several operations to load the data into Snowflake instance – it loads the data into staging area in Snowflake, then loads data from the staging area into a table and finally deletes any local temporary files.

This is the fastest way of getting your data to Snowflake, as the data is uploaded to the cloud in parallel in multiple threads. This means Snowflake can run its data loads in parallel as well. As such, this is the best way to load large volumes of data into your warehouse.

CloverDX illustration database-109


CloverDX illustration database-110


[Download the sample code]

Sample code contains a project that shows how to:

  • Create a subgraph that allows you to write data to your Snowflake instance via bulk-write operation (i.e. using PUT and COPY commands).
  • Use the subgraph to write data to Snowflake instance.

Compare the performance of writes with the regular JDBC connection.

CloverDX illustration database-111
CloverDX illustration database-118

Need a hand loading your data to Snowflake?

We'd be happy to walk you through how CloverDX's Snowflake connector simplifies bulk-loading. 

Let's Talk