docs/en/integrations/scylladb/source.md
ScyllaDB is a high-performance NoSQL database that is compatible with Apache Cassandra's CQL protocol. It is designed to provide predictable performance at scale, optimize cloud infrastructure, rapidly scale clusters with global replication and high availability,
ScyllaDB supports both self-hosted deployments and ScyllaDB Cloud, a fully-managed DBaaS available on AWS and GCP.
{{< list-tools >}}
kind: source
name: my-scylladb-source
type: scylladb
hosts:
- 127.0.0.1
keyspace: my_keyspace
protoVersion: 4
username: ${USER_NAME}
password: ${PASSWORD}
When connecting to ScyllaDB Cloud, set localDC to the datacenter name shown
on the Connect tab of your cluster in the ScyllaDB Cloud Console.
This enables DC-aware token-aware load balancing, which is required for
ScyllaDB Cloud connections.
kind: source
name: my-scylladb-cloud-source
type: scylladb
hosts:
- node-0.your-cluster.us-east-1.cloud.scylladb.com
- node-1.your-cluster.us-east-1.cloud.scylladb.com
- node-2.your-cluster.us-east-1.cloud.scylladb.com
keyspace: my_keyspace
username: ${USER_NAME}
password: ${PASSWORD}
localDC: AWS_US_EAST_1
{{< notice tip >}} Use environment variable replacement with the format ${ENV_NAME} instead of hardcoding your secrets into the configuration file. {{< /notice >}}
| field | type | required | description |
|---|---|---|---|
| type | string | true | Must be "scylladb". |
| hosts | string[] | true | List of contact point addresses (e.g., ["192.168.1.1:9042", "192.168.1.2:9042"]). The default port is 9042 if not specified. |
| keyspace | string | false | Name of the ScyllaDB keyspace to connect to (e.g., "my_keyspace"). |
| protoVersion | integer | false | CQL native protocol version (e.g., 4). |
| username | string | false | Name of the ScyllaDB user to connect as (e.g., "scylla"). |
| password | string | false | Password of the ScyllaDB user. |
| localDC | string | false | Datacenter name for DC-aware load balancing (e.g., "AWS_US_EAST_1"). Required for ScyllaDB Cloud connections. |
| caPath | string | false | Path to a CA certificate file. Use when connecting to a self-hosted ScyllaDB cluster with a private/custom CA. Not needed for ScyllaDB Cloud. |
| certPath | string | false | Path to the client certificate file for mutual TLS (mTLS). Required only when the server demands client certificate authentication. |
| keyPath | string | false | Path to the client private key file for mutual TLS (mTLS). Required together with certPath. |
| enableHostVerification | bool | false | Whether to verify the server's hostname against its TLS certificate. Defaults to false. |