通过 ClickPipes 将 MongoDB 数据摄取到 ClickHouse Cloud 的功能目前处于 Public Beta 阶段。
在 ClickHouse Cloud 控制台和文档中,对于 MongoDB,“table” 和 “collection” 这两个词可互换使用。
前置条件
创建您的 ClickPipe
- 在 ClickHouse Cloud 控制台中,进入您的 ClickHouse Cloud 服务。
- 在左侧菜单中选择
Data Sources,然后点击“Set up a ClickPipe”。
- 选择
MongoDB CDC卡片。
添加源 MongoDB 数据库连接
- 填写您在前置条件步骤中配置的源 MongoDB 数据库连接信息。
在开始添加连接信息之前,请确保已在防火墙规则中将 ClickPipes IP 地址加入允许名单。您可以在下一页查看 ClickPipes IP 地址列表。
更多信息,请参阅本页顶部链接的源 MongoDB 设置指南。
(可选) 设置 SSH 隧道
- 打开“Use SSH Tunnelling”开关。
- 填写 SSH 连接详细信息。
-
若要使用基于密钥的身份验证,请点击“Revoke and generate key pair”生成新的密钥对,然后将生成的公钥复制到 SSH 服务器上的
~/.ssh/authorized_keys中。 - 点击“Verify Connection”验证连接。
请确保在 SSH 堡垒机的防火墙规则中将 ClickPipes IP 地址 加入允许列表,以便 ClickPipes 能够建立 SSH 隧道。
Next。
配置高级设置
- Sync interval:指 ClickPipes 轮询源数据库变更的时间间隔。该设置会影响目标端 ClickHouse 服务;对于注重成本的用户,建议将其设为较大的值 (大于
3600) 。 - 拉取批次大小:单个批次中拉取的行数。这是一个尽力而为的设置,因此在某些情况下可能无法严格遵循。
- Snapshot number of tables in parallel:指初始快照期间并行拉取的表数量。如果您有大量表,并希望控制并行拉取的表数,此设置会很有用。
配置表
- 在这里,您可以为 ClickPipe 选择目标数据库。您可以选择现有数据库,也可以新建一个。
- 您可以选择要从源 MongoDB 数据库复制过来的表。选择表时,您还可以为目标 ClickHouse 数据库中的这些表重命名。
检查权限并启动 ClickPipe
- 在权限下拉菜单中选择“完全访问”角色,然后点击“完成设置”。
接下来呢?
注意事项
- 需要使用 5.1.0 及以上版本的 MongoDB。
- 我们使用 MongoDB 原生的 Change Streams API 来实现 CDC (变更数据捕获) ,该 API 依赖 MongoDB 的 oplog 捕获实时变更。
- 默认情况下,MongoDB 中的文档会以 JSON 类型复制到 ClickHouse 中。这让 schema 管理更加灵活,并可使用 ClickHouse 丰富的 JSON 操作符进行查询和分析。你可以在这里了解有关查询 JSON 数据的更多信息。
- 目前暂不支持自助式 PrivateLink 配置。如果你使用 AWS 且需要 PrivateLink,请联系 db-integrations-support@clickhouse.com 或创建支持工单——我们会协助你完成启用。