Configuring Connection Details
This section provides instructions for configuring the connection details required to establish communication between the connector and your third-party system.
For information about configuring the connection to the event broker, see Connecting to Your Event Broker.
This connector supports workflows only in the direction of:
-
Solace to Snowflake
The name of the binder for Snowflake is snowflake.
Snowflake Connection Details
Manual Configuration
To manually configure the application.yml file:
snowflake-binder: url: <locator>.<region>.snowflakecomputing.com:443 username: snowflake_user role: <role> private-key-path: <private-key-path> private-key-password: <password>
Where:
-
<role>: Snowflake role, for example:ACCOUNTADMIN,SECURITYADMIN,USERADMIN,SYSADMIN,PUBLIC.For more information, see: Create Role and Overview of Access Control in the Snowflake documentation.
-
<private-key-path>: The file protocol path to the private key file, for example,'file:///C:/Users/admin/Documents/privateKeyPEM.p8'.For more information, see Key-pair authentication and key-pair rotation in the Snowflake documentation.
-
<password>: The password for the encrypted private key, if applicable.
Snowflake Binder Configuration Options
These properties must be prefixed with snowflake.
| Config Option | Type | Description |
|---|---|---|
|
|
|
The Snowflake account URL in the format:
For instance, for the Snowflake account URL |
username
|
|
The user login name for the Snowflake account. |
|
|
|
The role that the user should take while performing ingestion, for example:
For more information, see: Create Role and Overview of Access Control in the Snowflake documentation. |
|
|
|
The file protocol path to the private key to use to authenticate the user, for example, Supports both encrypted and unencrypted keys. For more information, see Key-pair authentication and key-pair rotation in the Snowflake documentation. |
|
|
|
The password for the encrypted private key, if applicable. |
Snowflake Producer Configuration Options
The following configuration options are available to Snowflake producers:
-
To apply a configuration option to all output bindings, prefix it with
spring.cloud.stream.snowflake.default.producer. -
To apply a configuration option to a specific binding, prefix it with
spring.cloud.stream.snowflake.bindings.<bindingName>.producer.
| Config Option | Type | Valid Values | Default Value | Description |
|---|---|---|---|---|
|
|
|
|
|
The name of the database that contains the table to insert rows into. This name can also
be specified in the binding destination binding when using a fully-qualified table name in the <database>.<schema>.<table> form. |
|
|
|
|
|
The name of the schema that contains the table to insert rows into. This name can also
be specified in the destination binding when using a fully-qualified table name
in the <database>.<schema>.<table> or <schema>.<table> form. |
|
|
|
|
|
The name of the table to insert rows into. This name can also be specified in the Specifying this name as a default binding setting allows multiple workflows to share the same target table without explicitly declaring the target table. |
|
|
|
|
|
This setting controls when the connector sends acknowledgments to the PubSub+ software event broker:
|
|
|
|
|
|
This setting specifies whether and how the connector should provision the specified target table:
|
Connecting to Multiple Systems
To connect to multiple systems of the same type, use the Spring Cloud Stream multiple binder syntax.
For example:
spring:
cloud:
stream:
binders:
solace1: # 1st solace binder in this example
type: solace
environment:
solace:
java:
host: tcp://localhost:55555
solace2: # 2nd solace binder in this example
type: solace
environment:
solace:
java:
host: tcp://other-host:55555
snowflake1: # The only snowflake binder
type: snowflake
environment:
snowflake-binder:
# Add connection and binder properties here to customize behavior.
# Required for internal use
undefined:
type: undefined
bindings:
input-0:
destination: <input-destination>
binder: solace1 # Reference 1st solace binder
output-0:
destination: <output-destination>
binder: snowflake1
input-1:
destination: <input-destination>
binder: solace2 # Reference 2nd solace binder
output-1:
destination: <output-destination>
binder: snowflake1
The configuration above defines two binders of type solace and one binder of type snowflake, which are then referenced within the bindings.
Each binder above is configured independently under spring.cloud.stream.binders.<bindername>.environment.
When connecting to multiple systems, all binder configuration must be specified using the multiple binder syntax for all binders. For example, under the spring.cloud.stream.binders.<binder-name>.environment.
Do not use single-binder configuration (for example, solace.java.* at the root of your application.yml) while using the multiple binder syntax.