使用 Bigtable change stream to BigQuery 模板
在本快速入门中,您将了解如何设置启用了变更数据流的 Bigtable 表、运行变更数据流流水线,对表进行更改,然后查看已流式传输的变更。
准备工作
-
在 Google Cloud 控制台的项目选择器页面上,选择或创建 Google Cloud 项目。
选择或创建项目所需的角色
- 选择项目:选择项目不需要特定的 IAM 角色,您可以选择已获授角色的任何项目。
-
创建项目:如需创建项目,您需要拥有 Project Creator 角色 (
roles/resourcemanager.projectCreator),该角色包含resourcemanager.projects.create权限。了解如何授予角色。
启用 Dataflow、Cloud Bigtable API、Cloud Bigtable Admin API 和 BigQuery API。
启用 API 所需的角色
如需启用 API,您需要拥有 Service Usage Admin IAM 角色 (
roles/serviceusage.serviceUsageAdmin),该角色包含serviceusage.services.enable权限。了解如何授予角色。-
在 Google Cloud 控制台中,激活 Cloud Shell。
创建 BigQuery 数据集
使用 Google Cloud 控制台创建用于存储数据的数据集。
在 Google Cloud 控制台中,前往 BigQuery 页面。
在探索器窗格中,点击您的项目名称。
展开 操作选项,然后点击创建数据集。
在创建数据集页面上,执行以下操作:
- 在数据集 ID 部分,输入
bigtable_bigquery_quickstart。 - 保持其余默认设置不变,然后点击创建数据集。
- 在数据集 ID 部分,输入
创建启用了变更数据流的表
在 Google Cloud 控制台中,前往 Bigtable 实例页面。
点击您在本快速入门中使用的实例的 ID。
如果您没有可用实例,请在您附近的区域中使用默认配置创建实例。
在左侧导航窗格中,点击表。
点击创建表。
将表格命名为
bigquery-changestream-quickstart。添加一个名为
cf的列族。选择启用变更数据流。
点击创建。
在 Bigtable 表页面上,找到表
bigquery-changestream-quickstart。在变更数据流列中,点击连接。
在对话框中,选择 BigQuery。
点击创建 Dataflow 作业。
在提供的参数字段中,输入您的参数值。 您无需提供任何可选参数。
- 将 Bigtable 应用配置文件 ID 设置为
default。 - 将 BigQuery 数据集设置为
bigtable_bigquery_quickstart。
- 将 Bigtable 应用配置文件 ID 设置为
点击运行作业。
等待作业状态为正在启动或正在运行,然后再继续。作业排队后,大约需要 5 分钟才能完成。
在标签页中保持作业处于打开状态,以便在清理资源时停止作业。
向 Bigtable 写入一些数据
在 Cloud Shell 中,向 Bigtable 写入几行,以便变更日志可以将一些数据写入 BigQuery。只要在创建作业后写入数据,系统就会显示变更。您无需等待作业状态变为
running。cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \ set bigquery-changestream-quickstart user123 cf:col1=abc cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \ set bigquery-changestream-quickstart user546 cf:col1=def cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \ set bigquery-changestream-quickstart user789 cf:col1=ghi替换以下内容:
- PROJECT_ID:您正在使用的项目的 ID
- BIGTABLE_INSTANCE_ID:包含
bigquery-changestream-quickstart表的实例的 ID
在 BigQuery 中查看变更日志
在 Google Cloud 控制台中,前往 BigQuery 页面。
在探索器窗格中,展开您的项目和数据集
bigtable_bigquery_quickstart。点击表
bigquery-changestream-quickstart_changelog。如需查看变更日志,请点击预览。

清理
为避免因本页中使用的资源导致您的 Google Cloud 账号产生费用,请按照以下步骤操作。
在表上停用变更数据流:
gcloud bigtable instances tables update bigquery-changestream-quickstart \ --project=PROJECT_ID --instance=BIGTABLE_INSTANCE_ID \ --clear-change-stream-retention-period删除
bigquery-changestream-quickstart表:cbt --instance=BIGTABLE_INSTANCE_ID --project=PROJECT_ID deletetable bigquery-changestream-quickstart停止变更数据流流水线:
在 Google Cloud 控制台中,前往 Dataflow 作业页面。
从作业列表中选择您的流处理作业。
在导航中,点击停止。
在停止作业对话框中,选择取消,然后点击停止作业。
删除 BigQuery 数据集:
在 Google Cloud 控制台中,前往 BigQuery 页面。
在探索器面板中,找到数据集
bigtable_bigquery_quickstart,然后点击它。点击删除,输入
delete,然后点击删除进行确认。
可选:删除实例(如果您为此快速入门创建了新实例):
cbt deleteinstance BIGTABLE_INSTANCE_ID