Skip to content

CDC: Kafka to ClickHouse | Real-Time Replication Guide

Real-time Change Data Capture from Kafka to ClickHouse with exactly-once delivery, order-token guards, and tombstone anti-resurrect protection.

Source: Kafka. Destination: ClickHouse.

CDC apply: ReplacingMergeTree.

Sample config

yaml
skippr:
  workspace: cdc_kafka_to_clickhouse
pipelines:
  cdc_kafka_to_clickhouse:
    data_source: data_sources.source
    data_sink: data_sinks.warehouse
    cdc:
      default:
        business_key_columns:
          - id
data_sources:
  source:
    Kafka:
      brokers: "localhost:9092"
      topic: dbserver1.public.customers
      cdc_mode: snapshot_then_cdc
data_sinks:
  warehouse:
    Clickhouse:
      url: "http://localhost:8123"
      database: default
      user: default

Environment

bash
export CLICKHOUSE_PASSWORD="mypassword"

Source connector: kafka. Destination connector: clickhouse-warehouse.

See CDC overview.