跳至主要内容

将 Confluent Cloud 集成到 ClickHouse

先决条件

我们假设您熟悉

来自 ClickHouse 与 Confluent Cloud 的官方 Kafka 连接器

在 Confluent Cloud 上安装

这是一份快速指南,可帮助您开始使用 Confluent Cloud 上的 ClickHouse Sink 连接器。有关更多详细信息,请参阅 官方 Confluent 文档.

创建主题

在 Confluent Cloud 上创建主题非常简单,您可以在 此处 找到详细说明。

重要说明

  • Kafka 主题名称必须与 ClickHouse 表名称相同。您可以通过使用转换器(例如 ExtractTopic)来调整这一点。
  • 更多分区并不总是意味着更高性能 - 请查看我们的即将发布的指南以获取更多详细信息和性能提示。

安装连接器

您可以从我们的 存储库 下载连接器 - 也请随时在此处提交评论和问题!

导航至“连接器插件”->“添加插件”,并使用以下设置

'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.

示例

Settings for adding a custom connector

收集您的连接详细信息

要使用 HTTP(S) 连接到 ClickHouse,您需要以下信息

  • HOST 和 PORT:通常,在使用 TLS 时端口为 8443,在不使用 TLS 时端口为 8123。

  • DATABASE NAME:默认情况下,存在名为 default 的数据库,请使用您要连接到的数据库的名称。

  • USERNAME 和 PASSWORD:默认情况下,用户名为 default。请使用适合您用例的用户名。

您的 ClickHouse Cloud 服务的详细信息可在 ClickHouse Cloud 控制台中找到。选择您要连接到的服务,然后单击“连接”。

ClickHouse Cloud service connect button

选择“HTTPS”,详细信息将在示例 curl 命令中提供。

ClickHouse Cloud HTTPS connection details

如果您使用的是自托管 ClickHouse,连接详细信息将由您的 ClickHouse 管理员设置。

配置连接器

导航至 连接器 -> 添加连接器,并使用以下设置(请注意,这些值仅为示例)。

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

注意

您必须指定 HTTP(S) 端口。连接器目前不支持原生协议。

阅读文档。

您应该已完成所有设置!

已知限制