Core requirements of ClickHouse Kafka Connect
mainThe ClickHouse Kafka Connect Sink is designed around four primary architectural requirements:
- Independence from ClickHouse: The connector operates as an architecturally independent component from the ClickHouse database.
- Push-based architecture: Data is pushed from Kafka to ClickHouse. ClickHouse does not need to connect to Kafka, making this suitable for environments where ClickHouse is cloud-hosted and Kafka is self-managed.
- Full ClickHouse type support: The connector supports all ClickHouse types, including complex types like
Map. (Note: Support forTupleandJSONtypes is currently in development). - Exactly-once delivery: The connector ensures that every Kafka message is delivered to ClickHouse exactly one time, preventing both message loss and duplication.