BigQuery ClickPipe 提供了一种完全托管且具备高弹性的方式,可将 BigQuery 中的数据摄取到 ClickHouse Cloud。在私有预览阶段,它支持 initial load 复制方法,帮助你批量加载 BigQuery 数据集,以便进行探索和原型验证。未来将支持 CDC (变更数据捕获) ;在此之前,我们建议你在 initial load 完成后,使用 Google Cloud Storage ClickPipe 持续将 BigQuery 导出的数据同步到 ClickHouse Cloud。
BigQuery ClickPipes 既可通过 ClickPipes UI 手动部署和管理,也可通过 OpenAPI 和 Terraform 以编程方式进行部署和管理。
前提条件
-
您必须具备在 GCP 项目中管理服务账号和 IAM roles 的权限,或者获得管理员协助。我们建议按照官方文档创建一个专用服务账号,并仅授予所需的最小权限。
-
初始加载过程需要用户提供一个 Google Cloud Storage (GCS) 存储桶用于暂存。我们建议按照官方文档为您的 ClickPipe 创建一个专用存储桶。未来,该中间存储桶将由 ClickPipes 提供并管理。
选择数据源
1. 在 ClickHouse Cloud 中,从主导航菜单选择 Data sources 并点击 Create ClickPipe。

2. 点击 BigQuery 磁贴。

配置你的 ClickPipe
根据你的 BigQuery 数据集的大小,或你想要同步的表的总大小,你可能需要调整 ClickPipe 的默认摄取设置。
配置表
1. 选择要将 BigQuery 表复制到的 ClickHouse 数据库。你可以选择现有数据库或创建新的数据库。
2. 选择要复制的表以及 (可选) 要复制的列。只有提供的服务账号有权访问的数据集才会被列出。

3. 对于每个选定的表,请务必在 Advanced settings > Use a custom sorting key 下定义自定义排序键。将来,排序键会根据上游数据库中现有的聚类或分区键自动推断。

配置权限
最后,你可以为内部 ClickPipes 用户配置权限。
Permissions: ClickPipes 将创建一个专用用户用于将数据写入目标表。你可以为该内部用户选择自定义角色或以下预定义角色之一:
Full access: 对集群具有完全访问权限。如果你在目标表上使用 materialized views 或 dictionary,则需要此权限。Only destination: 仅对目标表具有插入权限。
完成设置
点击 Create ClickPipe 完成设置。你将被重定向到概览页面,在那里可以查看初始加载的进度并点击查看你的 BigQuery ClickPipes 的详细信息。

