跳转到主内容
跳转到主内容

将 Estuary 连接到 ClickHouse

Partner Integration

Estuary 是一款 right-time 数据平台,可通过易于配置的 ETL 管道灵活地将实时与批处理数据结合起来。借助企业级安全性和多种部署选项,Estuary 能够从 SaaS、数据库和流式数据源构建持久稳定的数据流,并将其传输到包括 ClickHouse 在内的多种目标端。

Estuary 通过 Kafka ClickPipe 与 ClickHouse 连接。使用此集成时,你无需自行维护 Kafka 生态系统。

设置指南

前提条件

  • 一个 Estuary 账户
  • 在 Estuary 中配置好一个或多个从所需数据源拉取数据的captures
  • 具有 ClickPipe 权限的 ClickHouse Cloud 账户

创建 Estuary materialization

要将 Estuary 中源集合的数据迁移到 ClickHouse,首先需要创建一个 materialization

  1. 在 Estuary 控制台中,进入 Destinations 页面。

  2. 点击 + New Materialization

  3. 选择 ClickHouse connector。

  4. 在 Materialization、Endpoint 和 Source Collections 部分填写详细信息:

    • Materialization Details: 为该 materialization 提供一个唯一名称,并选择 data plane (云服务提供商和区域)

    • Endpoint Config: 提供一个安全的 Auth Token

    • Source Collections: 关联一个已有的 capture,或选择要暴露给 ClickHouse 的数据集合

  5. 点击 Next,然后点击 Save and Publish

  6. 在 materialization 详情页面,记录下 ClickHouse materialization 的完整名称。其形式类似:your-tenant/your-unique-name/dekaf-clickhouse

Estuary 会开始将选定的集合作为 Kafka 消息进行流式传输。ClickHouse 可以通过 Kafka ClickPipe,结合 Estuary 的 broker 信息和你提供的 auth token 来访问这些数据。

输入 Kafka 连接详情

在 ClickHouse 中设置一个新的 Kafka ClickPipe,并输入连接详情:

  1. 在 ClickHouse Cloud 控制台中,选择 Data sources

  2. 创建一个新的 ClickPipe

  3. 选择 Apache Kafka 作为数据源。

  4. 使用 Estuary 的 broker 和 registry 信息输入 Kafka 连接详情:

    • 为 ClickPipe 提供一个名称
    • 对于 broker,使用:dekaf.estuary-data.com:9092
    • 将认证方式保留为默认的 SASL/PLAIN 选项
    • 对于 user,输入来自 Estuary 的完整 materialization 名称 (例如:your-tenant/your-unique-name/dekaf-clickhouse)
    • 对于 password,输入为该 materialization 提供的 auth token
  5. 打开 schema registry 选项

    • 对于 schema URL,使用:https://dekaf.estuary-data.com
    • schema key 与 broker user 相同 (即你的 materialization 名称)
    • secret 与 broker password 相同 (即你的 auth token)

配置传入数据

  1. 选择一个 Kafka topic (来自 Estuary 的某个数据集合) 。

  2. 选择一个 offset

  3. ClickHouse 会检测到该 topic 的消息。你可以继续进入 Parse information 部分来配置表信息。

  4. 选择创建新表或将数据写入匹配的现有表。

  5. 将源字段映射到表的列,确认列名、类型以及其是否可为空 (Nullable) 。

  6. 在最后的 Details and settings 部分,你可以为专用数据库用户选择权限。

在对配置满意后,创建 ClickPipe。

ClickHouse 会为你的新数据源进行创建和配置,并开始从 Estuary 消费消息。你可以根据需要创建任意数量的 ClickPipes,以便从所有目标数据集合进行流式传输。

其他资源

如需了解更多关于与 Estuary 设置集成的信息,请参阅 Estuary 的文档: