创建和管理持续性具体化视图
本文档介绍了如何在 Bigtable 中创建持续性具体化视图并对其执行操作。在阅读本文档之前,请先阅读持续性具体化视图中的概览。
您可以使用 Google Cloud CLI、 Google Cloud 控制台中的 Bigtable Studio 查询编辑器或适用于 Java 和 Go 的 Bigtable 客户端库创建持续性具体化视图。
准备工作
如果您计划使用 gcloud CLI,请执行以下步骤。
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
所需的角色
如需获得创建和管理持续性具体化视图所需的权限,请让您的管理员向您授予实例的 Bigtable Admin (roles/bigtable.admin
) 角色。否则,请在实例级别请求以下权限,具体取决于您要执行的操作:
- 创建时间:
bigtable.materializedViews.create
- 更新:
bigtable.materializedViews.update
- 删除:
bigtable.materializedViews.delete
- 列表:
bigtable.materializedViews.list
如需创建持续性物化视图,您还必须至少拥有来源表的 bigtable.tables.readRows
权限。
如需查看所有可用角色和权限,请参阅使用 IAM 进行 Bigtable 访问权限控制。
创建持续性具体化视图
在创建连续物化视图之前,请执行以下操作:
- 可选:最佳实践是,为实例中的集群启用自动扩缩,以确保它们可以在 Bigtable 处理和同步持续性具体化视图时根据需要进行扩容,并处理任何额外的存储用量。
- 指定您有权读取的 Bigtable 表,以用作持续性具体化视图的来源。
- 准备用于定义持续性物化视图的 SQL 查询。如需了解查询要求,请参阅持续性具体化视图查询。
创建持续性物化视图后,该视图可能需要几分钟时间才会变为有效状态并可供查询。您可以查看视图的指标,以监控其进度。
控制台
在 Google Cloud 控制台中打开 Bigtable 实例列表。
请选择一个实例。
在导航窗格中,点击 Bigtable Studio。
点击
打开新标签页,然后选择编辑器。在查询编辑器出现时,编写查询。如果查询是有效的 SQL,系统会显示有效消息。
可选:如需以 SQL 格式设置语句,请点击格式。
点击运行。查询结果会显示在结果表中。
对查询感到满意后,点击保存,然后选择持久化视图。
如需详细了解如何使用查询编辑器,请参阅使用 Bigtable Studio 管理数据。
gcloud
如需创建连续物化视图,请使用 gcloud beta bigtable materialized-views create
命令:
gcloud beta bigtable materialized-views create VIEW \
--instance=INSTANCE --query=QUERY
替换以下内容:
VIEW
:持续性具体化视图的唯一标识符。在查询持续性具体化视图时,您可以将此 ID 用作表 ID。INSTANCE
:要在其中创建连续具体化视图的实例的标识符。必须与源表相同的实例。QUERY
:用于定义持续性具体化视图的有效 SQL 语句。
可选:如需为持续性具体化视图启用删除保护,请将以下内容附加到该命令后面:
--deletion-protection=DELETION_PROTECTION
将 DELETION_PROTECTION
替换为 true
或 false
。
更新持续的物化视图
您可以更新持续性具体化视图的删除保护。您无法更新用于定义持续性物化视图的 SQL 查询;如果您需要修改该查询,则必须删除持续性物化视图,然后创建包含所做更改的新持续性物化视图。
控制台
您无法在控制台中更新持续性物化视图。请改用 gcloud CLI。
gcloud
如需为持续性具体化视图启用或停用删除保护,请使用 gcloud beta bigtable materialized-views update command
。
gcloud beta bigtable materialized-views update VIEW \
-–instance=INSTANCE --deletion-protection=DELETION_PROTECTION
替换以下内容:
VIEW
:要更新的连续性物化视图的唯一标识符INSTANCE
:包含连续物化视图的实例的标识符DELETION_PROTECTION
:true
或false
删除持续性具体化视图
您可以删除未启用删除保护的持续性具体化视图。此操作无法撤消。
如需删除连续具体化视图,请使用 gcloud beta bigtable
materialized-views delete
命令:
gcloud beta bigtable materialized-views delete VIEW \
--instance=INSTANCE
替换以下内容:
VIEW
:要删除的连续性具体化视图的唯一标识符INSTANCE
:包含连续物化视图的实例的标识符
获取持续性具体化视图的列表
您可以查看实例的持续具体化视图列表。
控制台
在 Google Cloud 控制台中打开 Bigtable 实例列表。
从列表中选择一个实例。
在导航窗格中,点击 Bigtable Studio。系统会显示持续性具体化视图的列表。
可选:列出实例中的前 10 个视图。如需查看更多 10 个,请点击展开。
gcloud
如需列出实例的所有持续性具体化视图,请使用 gcloud bigtable
materialized-views list
命令。
gcloud bigtable materialized-views list --instance=INSTANCE
将 INSTANCE
替换为实例 ID。