Requisitos previos
Suponemos que estás familiarizado con:
- ClickHouse Connector Sink
- Confluent Platform y Custom Connectors.
El conector oficial de Kafka de ClickHouse para Confluent Platform
Instalación en Confluent Platform
Esta guía rápida te ayudará a empezar a usar el ClickHouse Sink Connector en Confluent Platform. Para obtener más detalles, consulta la documentación oficial de Confluent.
Crear un topic
Crear un topic en Confluent Platform es bastante sencillo, y puedes consultar instrucciones detalladas aquí.
Notas importantes
- El nombre del topic de Kafka debe ser el mismo que el nombre de la tabla de ClickHouse. Esto puede ajustarse mediante un transformador (por ejemplo,
ExtractTopic). - Tener más particiones no siempre implica un mayor rendimiento; consulta nuestra próxima guía para obtener más detalles y consejos de optimización.
Instalar el conector
Puede descargar el conector desde nuestro repositorio. No dude en enviarnos allí también sus comentarios e incidencias.
Vaya a "Connector Plugins" -> "Add plugin" y utilice la siguiente configuración:
'Connector Class' - 'com.clickhouse.kafka.connect.ClickHouseSinkConnector'
'Connector type' - Sink
'Sensitive properties' - 'password'. This will ensure entries of the ClickHouse password are masked during configuration.Ejemplo:

Reúne los datos de conexión
Para conectarse a ClickHouse con HTTP(S), necesita esta información:
| Parámetro(s) | Descripción |
|---|---|
HOST and PORT |
Normalmente, el puerto es 8443 cuando se usa TLS o 8123 cuando no se usa TLS. |
DATABASE NAME |
De forma predeterminada, existe una base de datos llamada default; use el nombre de la base de datos a la que desea conectarse. |
USERNAME and PASSWORD |
De forma predeterminada, el nombre de usuario es default. Use el nombre de usuario adecuado para su caso de uso. |
Los detalles de su servicio de ClickHouse Cloud están disponibles en la consola de ClickHouse Cloud. Seleccione un servicio y haga clic en Connect:

Elija HTTPS. Los detalles de conexión se muestran en un comando curl de ejemplo.

Si usa ClickHouse autogestionado, los detalles de conexión los establece su administrador de ClickHouse.
Configurar el conector
Ve a Connectors -> Add Connector y usa la siguiente configuración (ten en cuenta que los valores son solo de ejemplo):
{
"database": "<DATABASE_NAME>",
"errors.retry.timeout": "30",
"exactlyOnce": "false",
"schemas.enable": "false",
"hostname": "<CLICKHOUSE_HOSTNAME>",
"password": "<SAMPLE_PASSWORD>",
"port": "8443",
"ssl": "true",
"topics": "<TOPIC_NAME>",
"username": "<SAMPLE_USERNAME>",
"key.converter": "org.apache.kafka.connect.storage.StringConverter",
"value.converter": "org.apache.kafka.connect.json.JsonConverter",
"value.converter.schemas.enable": "false"
}Especifique los endpoints de conexión
Debe especificar la lista de endpoints permitidos a los que el conector puede acceder.
Debe usar un nombre de dominio completo (FQDN) al añadir los endpoints de salida de red.
Ejemplo: u57swl97we.eu-west-1.aws.clickhouse.com:8443
¡Ya debería tenerlo todo listo!
Limitaciones conocidas
- Los Custom Connectors deben usar endpoints públicos en Internet. No se admiten direcciones IP estáticas.
- Puede anular algunas propiedades de Custom Connector. Consulte la lista en la documentación oficial.
- Los Custom Connectors están disponibles solo en algunas regiones de AWS
- Consulte la lista de limitaciones de Custom Connectors en la documentación oficial