Skip to main content

Introducción

En esta guía, veremos cómo conectar ClickHouse a Kafka mediante colecciones con nombre. Usar el archivo de configuración para las colecciones con nombre ofrece varias ventajas:
  • Gestión centralizada y más sencilla de los ajustes de configuración.
  • Los cambios en los ajustes pueden realizarse sin modificar las definiciones de tablas SQL.
  • Revisión y solución de problemas de configuración más sencillas al inspeccionar un único archivo de configuración.
Esta guía se ha probado con Apache Kafka 3.4.1 y ClickHouse 24.5.1.

Supuestos

Este documento da por hecho que cuentas con:
  1. Un clúster de Kafka en funcionamiento.
  2. Un clúster de ClickHouse configurado y en ejecución.
  3. Conocimientos básicos de SQL y familiaridad con la configuración de ClickHouse y Kafka.

Requisitos previos

Asegúrese de que el usuario que cree la colección con nombre tenga los permisos de acceso necesarios:
Consulta la Guía de gestión de usuarios para obtener más información sobre cómo habilitar el control de acceso.

Configuración

Añade la siguiente sección al archivo config.xml de ClickHouse:

Notas de configuración

  1. Ajusta las direcciones de Kafka y la configuración relacionada según la configuración de tu clúster de Kafka.
  2. La sección anterior a <kafka> contiene los parámetros del motor Kafka de ClickHouse. Para ver la lista completa de parámetros, consulta parámetros del motor Kafka .
  3. La sección dentro de <kafka> contiene opciones adicionales de configuración de Kafka. Para ver más opciones, consulta la configuración de librdkafka.
  4. Este ejemplo usa el protocolo de seguridad SASL_SSL y el mecanismo PLAIN. Ajusta estos valores según la configuración de tu clúster de Kafka.

Creación de tablas y bases de datos

Cree las bases de datos y tablas necesarias en su clúster de ClickHouse. Si ejecuta ClickHouse en un solo nodo, omita la parte del clúster en el comando SQL y use cualquier otro motor en lugar de ReplicatedMergeTree.

Crear la base de datos

Crear tablas de Kafka

Cree la primera tabla de Kafka para el primer clúster de Kafka:
Cree la segunda tabla de Kafka para el segundo clúster de Kafka:

Crear tablas replicadas

Cree una tabla para la primera de las tablas de Kafka:
Cree una tabla para la segunda tabla de Kafka:

Crear vistas materializadas

Cree una vista materializada para insertar datos de la primera tabla de Kafka en la primera tabla replicada:
Cree una vista materializada para insertar los datos de la segunda tabla de Kafka en la segunda tabla replicada:

Verificación de la configuración

Ahora deberías ver los grupos de consumidores correspondientes en tus clústeres de Kafka:
  • cluster_1_clickhouse_consumer en cluster_1
  • cluster_2_clickhouse_consumer en cluster_2
Ejecuta las siguientes consultas en cualquiera de los nodos de ClickHouse para ver los datos en ambas tablas:

Nota

En esta guía, los datos que se ingieren en ambos topics de Kafka son los mismos. En su caso, serían distintos. Puede añadir tantos clústeres de Kafka como desee. Salida de ejemplo:
Esto completa la configuración para integrar ClickHouse con Kafka mediante colecciones con nombre. Al centralizar la configuración de Kafka en el archivo config.xml de ClickHouse, puede administrar y ajustar los parámetros con mayor facilidad, lo que garantiza una integración más ágil y eficiente.
Última modificación el 3 de julio de 2026