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

Интеграция платформы 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

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

To connect to ClickHouse with HTTP(S) you need this information:

Parameter(s)Description
HOST and PORTTypically, the port is 8443 when using TLS or 8123 when not using TLS.
DATABASE NAMEOut of the box, there is a database named default, use the name of the database that you want to connect to.
USERNAME and PASSWORDOut of the box, the username is default. Use the username appropriate for your use case.

The details for your ClickHouse Cloud service are available in the ClickHouse Cloud console. Select a service and click Connect:

ClickHouse Cloud service connect button

Choose HTTPS. Connection details are displayed in an example curl command.

ClickHouse Cloud HTTPS connection details

If you are using self-managed ClickHouse, the connection details are set by your ClickHouse administrator.

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

Перейдите в 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). Коннектор пока не поддерживает нативный протокол.

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

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

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