Предварительные требования
Мы предполагаем, что вы знакомы со следующим:
- ClickHouse Connector Sink
- Confluent Platform и Custom Connectors.
Официальный коннектор Kafka от ClickHouse для Confluent Platform
Установка на Confluent Platform
Это краткое руководство поможет вам быстро начать работу с ClickHouse Sink Connector на Confluent Platform. Подробнее см. в официальной документации Confluent.
Создайте топик
Создать топик в Confluent Platform довольно просто; подробные инструкции приведены здесь.
Важные примечания
- Имя Kafka топика должно совпадать с именем таблицы ClickHouse. Это можно изменить с помощью трансформера (например,
ExtractTopic). - Большее количество партиций не всегда означает более высокую производительность — подробности и советы по оптимизации производительности смотрите в нашем будущем руководстве.
Установка коннектора
Вы можете скачать коннектор из нашего репозитория — не стесняйтесь также оставлять там комментарии и сообщать о проблемах!
Перейдите в "Connector Plugins" -> "Add plugin" и укажите следующие настройки:
'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.Пример:

Подготовьте сведения о подключении
Чтобы подключиться к ClickHouse по HTTP(S), вам понадобится следующая информация:
| Параметр(ы) | Описание |
|---|---|
HOST and PORT |
Обычно используется порт 8443 при использовании TLS и 8123 без TLS. |
DATABASE NAME |
По умолчанию есть база данных default; используйте имя базы данных, к которой хотите подключиться. |
USERNAME and PASSWORD |
По умолчанию имя пользователя — default. Используйте имя пользователя, подходящее для вашего сценария использования. |
Сведения о подключении для вашего сервиса ClickHouse Cloud доступны в консоли ClickHouse Cloud. Выберите сервис и нажмите Connect:

Выберите HTTPS. Сведения о подключении будут показаны в примере команды curl.

Если вы используете самоуправляемый 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"
}Укажите конечные точки подключения
Необходимо указать список разрешенных конечных точек, к которым коннектор может обращаться.
При добавлении конечных точек исходящего сетевого трафика необходимо использовать полное доменное имя (FQDN).
Пример: u57swl97we.eu-west-1.aws.clickhouse.com:8443
Теперь всё готово!
Известные ограничения
- Custom Connectors должны использовать общедоступные интернет-конечные точки. Статические IP-адреса не поддерживаются.
- Вы можете переопределить некоторые свойства Custom Connectors. См. полный список в официальной документации.
- Custom Connectors доступны только в некоторых регионах AWS
- См. список ограничений Custom Connectors в официальной документации