Snowflake Destination Connector
The Snowflake destination connector in DataSync lets you write extracted and transformed data into a Snowflake database. Snowflake is a fully managed, cloud‑based OLAP database optimized for batch processing and large datasets. It does not support triggers or indexes and only enforces NULL/NOT NULL constraints on standard tables. When adding a Snowflake source table to an extraction, original source indexes (if any) are not included, and you cannot manually create indexes.
After creating all required destination connections, create your extraction.
Key Snowflake optimization techniques
| Technique | Description |
|---|---|
| Separation of storage and compute | Storage and compute resources are scaled independently to optimize both performance and costs. |
| Automatic partitioning | Data is automatically partitioned and stored in a columnar format. Each partition (typically 50–100 MB) includes statistics such as minimum and maximum values. |
| Parallel processing | Distributed compute nodes process queries in parallel across multiple nodes, improving throughput and reducing query time. |
Create a destination connection in DataSync
- Log in to DataSync.
- From the welcome screen, select Connections.
- Next to Destination Connections, click New.
- Select Snowflake.
- In the Connection Properties panel, enter the connection properties.
- (Optional) In the Additional Connection Properties panel, select Add property and enter the parameters for each property.
- Click Save.
Parameters
Connection properties
| Parameter | Description |
|---|---|
| Description | Unique name for the connection. Example: Snowflake |
| Account | Full account identifier. In Snowflake, open the account selector, select the desired account, then View Account details. The account identifier is shown under Account Identifier. See Account identifiers for details. Example: xy12345.us-east-1 |
| Database | Name of the database where data will be written. Example: AnalyticsDB |
| Authentication Mode | Authentication method:
|
| Username | (Basic only) Snowflake database username. |
| Password | (Basic only) Password for the specified username. The user type must be LEGACY_SERVICE. As Snowflake is deprecating single-factor basic authentication, use this method only if no other option is available. See User Management for more information. |
| Key User | (KeyPair only) Snowflake database username associated with the public key. |
| Private Key file | (KeyPair only) Path to the private key file associated with the public key. |
| PassPhrase | (KeyPair only) Password protecting the private key file. Leave blank if the key is not encrypted. |
| Timeout | Time in seconds to wait for connection opening and query execution before timeout. |
| Insecure Mode | Option to disable certificate revocation list checks. Use only as a temporary workaround during OCSP-related service disruptions. |
| Disable Retry | Option to disable retries on HTTP requests to Snowflake API endpoints. |
| Max HTTP Retries | Maximum number of retry attempts for failed HTTP requests when retry is enabled. Acceptable values range from 1 to 999. Default: 7. |
| Retry Timeout | Total timeout, in seconds, for requests covered by the retry policy. Default: 300 seconds. Any other value must be greater. |
Additional connection properties
Additional connection string properties not specified in the Connection Properties panel. For each property added, you can choose Visible or Encrypted. Selecting Encrypted hides the value from the interface and stores it encrypted in the back end, such as when defining passwords. Typical properties are listed below.
| Parameter | Description |
|---|---|
| Property | Connection string property that defines the action or behavior. Example: ReadOnly |
| Value | Value for the property. Example: True |
| Type | Visibility of the property: Visible or Encrypted. |