{
  "id": "cassandra",
  "title": "Write-behind configuration for cassandra",
  "url": "https://redis.io/docs/latest/integrate/write-behind/reference/debezium/cassandra/",
  "summary": "Describes the `application.properties` settings that configure Debezium Server for cassandra",
  "tags": [
    "docs",
    "integrate",
    "rs",
    "rdi"
  ],
  "last_updated": "2026-04-01T08:10:08-05:00",
  "page_type": "content",
  "content_hash": "2704e9013082b6c2a568d97438d85f5dd68346b1835eae20f490d23ab095a9ad",
  "sections": [
    {
      "id": "application-properties",
      "title": "application.properties",
      "role": "overview",
      "text": "[code example]"
    }
  ],
  "examples": [
    {
      "id": "application-properties-ex0",
      "language": "properties",
      "code": "debezium.sink.type=redis\ndebezium.sink.redis.message.format=extended\ndebezium.sink.redis.address=<RDI_HOST>:<RDI_PORT>\n# Comment the following line if not using a password for Write-behind.\ndebezium.sink.redis.password=<RDI_PASSWORD>\ndebezium.sink.redis.memory.limit.mb=80\n# Redis SSL/TLS\n#debezium.sink.redis.ssl.enabled=true\n# When Redis is configured with a replica shard, these properties allow to verify that the data has been written to the replica.\n#debezium.sink.redis.wait.enabled=true\n#debezium.sink.redis.wait.timeout.ms=1000\n#debezium.sink.redis.wait.retry.enabled=true\n#debezium.sink.redis.wait.retry.delay.ms=1000\n#debezium.source.database.history.redis.ssl.enabled=true\n# Location of the Java keystore file containing an application process' own certificate and private key.\n#javax.net.ssl.keyStore=<KEY_STORE_FILE_PATH>\n# Password to access the private key from the keystore file specified by javax.net.ssl.keyStore. This password is used twice: To unlock the keystore file (store password), and To decrypt the private key stored in the keystore (key password).\n#javax.net.ssl.keyStorePassword=<KEY_STORE_PASSWORD>\n# Location of the Java keystore file containing the collection of CA certificates trusted by this application process (trust store).\n#javax.net.ssl.trustStore=<TRUSE_STORE_FILE_PATH>\n# Password to unlock the keystore file (store password) specified by javax.net.ssl.trustStore.\n#javax.net.ssl.trustStorePassword=<TRUST_STORE_PASSWORD>\n\ndebezium.source.connector.class=io.debezium.connector.cassandra.Cassandra4Connector\ndebezium.source.snapshot.consistency=ONE\ndebezium.source.offset.storage=io.debezium.storage.redis.offset.RedisOffsetBackingStore\ndebezium.source.topic.prefix=<SOURCE_LOGICAL_SERVER_NAME>\ndebezium.source.cassandra.node.id=<NAME_SOURCE_NODE>\ndebezium.source.cassandra.hosts=<SOURCE_DB_HOST>\ndebezium.source.cassandra.port=<SOURCE_DB_PORT>\ndebezium.source.cassandra.config=<ABSOLUTE_PATH_CONFIG_FILE>\ndebezium.source.commit.log.relocation.dir=<RELOCATION_DIR>\ndebezium.source.commit.log.real.time.processing.enabled=true\ndebezium.source.commit.marked.complete.poll.interval.ms=1000\ndebezium.source.http.port=8040\n\n# Whether to include the detailed schema information generated by Debezium in each record written to RDI.\n# Note: Including the schema reduces the initial sync throughput and is not recommended for large data sets.\ndebezium.source.key.converter.schemas.enable=false\ndebezium.source.value.converter.schemas.enable=false\n# When detailed schema information is excluded, handle decimal numeric types as strings.\ndebezium.source.decimal.handling.mode=string\n\ndebezium.transforms=AddPrefix\ndebezium.transforms.AddPrefix.type=org.apache.kafka.connect.transforms.RegexRouter\ndebezium.transforms.AddPrefix.regex=.*\ndebezium.transforms.AddPrefix.replacement=data:$0\n\n# Logging\n# Uncomment the following lines if running Debezium Server as a Java standalone process (non-containerized).\n#quarkus.log.file.enable=true\n#quarkus.log.file.path=<LOG_FILE_PATH>\n#quarkus.log.file.rotation.max-file-size=100M\n#quarkus.log.file.rotation.rotate-on-boot=true\n#quarkus.log.file.rotation.file-suffix=.yyyy-MM-dd.gz\n#quarkus.log.file.rotation.max-backup-index=3\n\n# The default minimum log level for every log category, change only quarkus.log.level when needed.\nquarkus.log.min-level=TRACE\n# The default log level for every log category.\nquarkus.log.level=INFO\n# Determine whether to enable the JSON console formatting extension, which disables \"normal\" console formatting.\nquarkus.log.console.json=false\n# The port on which Debezium exposes Microprofile Health endpoint and other exposed status information.\nquarkus.http.port=8088",
      "section_id": "application-properties"
    }
  ]
}
