Was this page helpful?
Caution
You're viewing documentation for a previous version of ScyllaDB Open Source. Switch to the latest stable version.
Topic: Kafka Sink Connector configuration properties
Learn: How to configure the Scylla Kafka Sink Connector
Audience: Scylla application developers
This document contains Kafka Sink Connector configuration properties and descriptions.
To use this connector, specify the name of the connector class in the connector.class configuration property.
connector.class=io.connect.scylladb.ScyllaDbSinkConnector
Specifies which Scylla hosts to connect to. Scylla nodes use this list of hosts to find each other and learn the topology of the ring. You must change this if you are running multiple nodes. It’s essential to put at least two hosts in case of bigger clusters for high availability purposes. If you are using a docker image, connect to the host it uses.
Type: List
Importance: High
Default Value: [localhost]
Specifies the port that the Scylla hosts are listening on.
For example, when using a docker image, connect to the port it uses (use docker ps
).
Type: Int
Importance: Medium
Default Value: 9042
Valid Values: ValidPort{start=1, end=65535}
Specifies the local Data Center name (case-sensitive) that is local to the machine on which the connector is running.
Type: string
Default: “”
Importance: high
Enables security while loading the sink connector and connecting to Scylla.
Type: Boolean
Importance: High
Default Value: False
Specifies the username to use to connect to Scylla. Set scylladb.security.enable = true
when using this parameter.
Type: String
Importance: High
Default Value: cassandra
Specifies the password to use to connect to Scylla. Set scylladb.security.enable = true
when using this parameter.
Type: Password
Importance: High
Default Value: cassandra
Specifies the compression algorithm to use when connecting to Scylla.
Type: string
Default: NONE
Valid Values: [NONE, SNAPPY, LZ4]
Importance: low
Specifies if SSL should be enabled when connecting to Scylla.
Type: boolean
Default: false
Importance: high
Specifies the path to the Java Truststore.
Type: string
Default: “”
Importance: medium
Specifies the password to use to access the Java Truststore.
Type: password
Default: [hidden]
Importance: medium
Specifies the SSL Provider to use when connecting to Scylla.
Type: string
Default: JDK
Valid Values: [JDK, OPENSSL, OPENSSL_REFCNT]
Importance: low
Specifies the keyspace to write to. This keyspace is like a database in the Scylla cluster.
Type: String
Importance: High
Determines if the keyspace should be created if it does not exist.
Note
An error will result if a new keyspace (which already exists) has to be created, and this parameter is set to false.
Type: Boolean
Importance: High
Default Value: true
Specifies the replication factor to use if a keyspace is created by the connector. The Replication Factor (RF) is equivalent to the number of nodes where data (rows and partitions) are replicated. Data is replicated to multiple (RF=N) nodes
Type: int
Default: 3
Valid Values: [1,…]
Importance: high
Determines if the connector should manage the table.
Type: Boolean
Importance: High
Default Value: true
Specifies the compression algorithm to use when the table is created.
Type: string
Default: NONE
Valid Values: [NONE, SNAPPY, LZ4, DEFLATE]
Importance: medium
The table within the Scylla keyspace to store the offsets that have been read from Apache Kafka. This is used once to enable delivery to Scylla.
Type: String
Importance: Low
Default: kafka_connect_offsets
The requested consistency level to use when writing to Scylla. The Consistency Level (CL) determines how many replicas in a cluster that must acknowledge read or write operations before it is considered successful.
Type: String
Importance: High
Default Value: LOCAL_QUORUM
Valid Values: ANY, ONE, TWO, THREE, QUORUM, ALL, LOCAL_QUORUM, EACH_QUORUM, SERIAL, LOCAL_SERIAL, LOCAL_ONE
Determines if the connector should process deletes. The Kafka records with a Kafka record value as null will result in the deletion of the Scylla record with the primary key present in the Kafka record key.
Type: boolean
Default: true
Importance: high
The timeout for executing a Scylla statement.
Type: Long
Importance: Low
Default Value: 30000
The retention period for the data in Scylla. After this interval elapses, Scylla will remove these records. If this configuration is not provided, the Sink Connector will perform insert operations in Scylla without the TTL setting.
Type: Int
Importance: Medium
Default Value: null
If true, Kafka consumer offsets will be stored in the Scylla table. If false, the connector will skip writing offset information into Scylla (this might imply duplicate writes into Scylla when a task restarts).
Type: Boolean
Importance: Medium
Default Value: True
Maximum size(in kilobytes) of a single batch consisting of Scylla operations.
Should be equal to batch_size_warn_threshold_in_kb
and 1/10th of the batch_size_fail_threshold_in_kb
configured in scylla.yaml
.
The default value is set to 5kb, any change in this configuration should be accompanied by a change in scylla.yaml
.
Type: int
Default: 5
Valid Values: [1,…]
Importance: high
Specifies the maximum number of tasks to use for the connector that helps in parallelism.
Type:int
Importance: high
Specifies the name of the topics to consume data from and write to Scylla.
Type: list
Importance: high
A list of host/port pairs to use for establishing the initial connection to the Kafka cluster used for licensing.
All servers in the cluster will be discovered from the initial connection.
This list should be in the form host1:port1,host2:port2,…
.
Since these servers are just used for the initial connection to discover the full cluster membership (which may change dynamically), this list need not contain the full set of servers (you may want more than one, though, in case a server is down).
Type: list
Importance: high
Was this page helpful?