Перейти к основному содержанию
Перейти к основному содержанию

Интеграция платформы Confluent с ClickHouse

Предварительные требования

Мы исходим из того, что вы знакомы со следующим:

Официальный коннектор Kafka от ClickHouse для Confluent Platform

Установка на Confluent Platform

Это краткое руководство, которое поможет вам начать работу с ClickHouse Sink Connector на Confluent Platform. За дополнительной информацией обратитесь к официальной документации Confluent.

Создание топика

Создание топика на Confluent Platform достаточно простое, подробные инструкции приведены здесь.

Важные замечания

  • Имя топика Kafka должно совпадать с именем таблицы ClickHouse. Настроить это поведение можно с помощью трансформера (например, ExtractTopic).
  • Большее количество партиций не всегда означает более высокую производительность — см. наше следующее руководство для получения дополнительных сведений и рекомендаций по оптимизации производительности.

Установка коннектора

Вы можете скачать коннектор из нашего репозитория — там же вы можете оставлять комментарии и создавать issues!

Перейдите в «Connector Plugins» → «Add plugin» и используйте следующие настройки:

'Connector Class' - 'com.clickhouse.kafka.connect.ClickHouseSinkConnector'
'Connector type' - Sink
'Sensitive properties' - 'password'. Это обеспечит маскировку паролей ClickHouse при настройке конфигурации.

Пример:

Интерфейс Confluent Platform с настройками для добавления пользовательского коннектора ClickHouse

Соберите данные подключения

Чтобы подключиться к ClickHouse по HTTP(S), вам потребуется следующая информация:

Параметр(ы)Описание
HOST и PORTОбычно используется порт 8443 при использовании TLS или 8123 при отсутствии TLS.
DATABASE NAMEПо умолчанию существует база данных default; используйте имя базы данных, к которой вы хотите подключиться.
USERNAME и PASSWORDПо умолчанию имя пользователя — default. Используйте имя пользователя, соответствующее вашему сценарию.

Сведения о вашем сервисе ClickHouse Cloud доступны в консоли ClickHouse Cloud. Выберите сервис и нажмите Connect:

Кнопка подключения сервиса ClickHouse Cloud

Выберите HTTPS. Параметры подключения отображаются в примере команды curl.

Параметры HTTPS-подключения ClickHouse Cloud

Если вы используете самостоятельное (self-managed) развертывание ClickHouse, параметры подключения задаются администратором ClickHouse.

Настройте коннектор

Перейдите в Connectors -> Add Connector и используйте следующие настройки (обратите внимание, что значения приведены только в качестве примера):

{
  "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"
}

Укажите конечные точки подключения

Вам нужно задать список разрешённых конечных точек, к которым коннектор может обращаться. При добавлении конечных точек исходящего (egress) сетевого трафика необходимо использовать полное доменное имя (FQDN). Пример: u57swl97we.eu-west-1.aws.clickhouse.com:8443

Примечание

Необходимо указать порт HTTP(S). Коннектор пока не поддерживает нативный протокол.

Прочитайте документацию.

На этом настройка завершена.

Известные ограничения