从 MongoDB 摄取数据到 ClickHouse
通过 ClickPipes 从 MongoDB 到 ClickHouse Cloud 的数据摄取处于公开测试阶段。
在 ClickHouse Cloud 控制台和文档中,“表”和“集合”可互换用于 MongoDB。
您可以使用 ClickPipes 将数据从您的 MongoDB 数据库摄取到 ClickHouse Cloud。源 MongoDB 数据库可以托管在本地或云端,使用 MongoDB Atlas 等服务。
先决条件
首先,您需要确保您的 MongoDB 数据库已正确配置为复制。配置步骤取决于您部署 MongoDB 的方式,请遵循以下相关指南
一旦您的源 MongoDB 数据库设置完毕,您就可以继续创建您的 ClickPipe。
创建您的 ClickPipe
请确保您已登录到您的 ClickHouse Cloud 帐户。如果您还没有帐户,可以 在此处 注册。
- 在 ClickHouse Cloud 控制台中,导航到您的 ClickHouse Cloud 服务。
- 在左侧菜单上选择
数据源按钮,然后单击“设置 ClickPipe”。
- 选择
MongoDB CDC图块。
添加您的源 MongoDB 数据库连接
-
填写您在先决条件步骤中配置的源 MongoDB 数据库的连接详细信息。
参考在开始添加连接详细信息之前,请确保您已将 ClickPipes IP 地址列入防火墙规则的白名单。在下一页您可以找到 ClickPipes IP 地址列表。有关更多信息,请参阅 此页顶部的 链接的源 MongoDB 设置指南。
(可选) 设置 SSH 隧道
如果您的源 MongoDB 数据库不可公开访问,您可以指定 SSH 隧道详细信息。
-
启用“使用 SSH 隧道”切换开关。
-
填写 SSH 连接详细信息。
-
要使用基于密钥的身份验证,请单击“撤销并生成密钥对”以生成新的密钥对,并将生成的公钥复制到 SSH 服务器的
~/.ssh/authorized_keys下。 -
单击“验证连接”以验证连接。
请确保将 ClickPipes IP 地址 列入 SSH bastion 主机的防火墙规则白名单,以便 ClickPipes 可以建立 SSH 隧道。
填写连接详细信息后,单击 下一步。
配置高级设置
如有需要,您可以配置高级设置。下面提供了每个设置的简要说明
- 同步间隔:这是 ClickPipes 轮询源数据库以获取更改的间隔。对于对成本敏感的用户,我们建议将其保持在较高值(超过
3600)。 - 拉取批处理大小:每次提取的行数。这是一个尽力而为的设置,在所有情况下可能不会得到尊重。
- 快照并行表数:在初始快照期间并行提取的表数。当您有大量表并且想要控制并行提取的表数时,这很有用。
配置表
-
您可以在此处选择 ClickPipe 的目标数据库。您可以选择现有数据库或创建一个新数据库。
-
您可以选择要从源 MongoDB 数据库复制的表。在选择表时,还可以选择在目标 ClickHouse 数据库中重命名表。
审核权限并启动 ClickPipe
-
从权限下拉列表中选择“完全访问”角色,然后单击“完成设置”。
下一步?
设置好从 MongoDB 到 ClickHouse Cloud 复制数据的 ClickPipe 后,您可以专注于如何查询和建模数据以获得最佳性能。
注意事项
以下是一些在使用此连接器时需要注意的事项
- 我们需要 MongoDB 版本 5.1.0+。
- 我们使用 MongoDB 的原生 Change Streams API 进行 CDC,该 API 依赖于 MongoDB oplog 来捕获实时更改。
- 默认情况下,MongoDB 中的文档会复制到 ClickHouse 中,类型为 JSON。这允许灵活的模式管理,并使您能够使用 ClickHouse 中丰富的 JSON 运算符进行查询和分析。您可以在 此处 了解有关查询 JSON 数据的更多信息。
- 目前不可用自助式 PrivateLink 配置。如果您在 AWS 上并且需要 PrivateLink,请联系 [email protected] 或创建支持工单 — 我们将与您合作启用它。