建立及管理持續具體化檢視表
本文說明如何在 Bigtable 中建立及對連續具體化檢視區執行作業。閱讀本文前,請先參閱「持續性 materialized view」一文的總覽。
您可以使用 Google Cloud CLI、 Google Cloud 控制台中的 Bigtable Studio 查詢編輯器,或是適用於 Java 和 Go 的 Bigtable 用戶端程式庫,建立持續具體化檢視區塊。
事前準備
如果您打算使用 gcloud CLI,請按照下列步驟操作。
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
必要的角色
如要取得建立及管理持續具體化檢視區塊所需的權限,請要求管理員授予您執行個體的 Bigtable 管理員 (roles/bigtable.admin
) 角色。否則,請視要執行的作業,要求執行個體層級的下列權限:
- 建立:
bigtable.materializedViews.create
- 更新狀態:
bigtable.materializedViews.update
- 刪除:
bigtable.materializedViews.delete
- 清單:
bigtable.materializedViews.list
如要建立連續具體化檢視表,您也必須至少具備來源資料表的 bigtable.tables.readRows
權限。
如要查看所有可用的角色和權限,請參閱「使用 IAM 控管 Bigtable 存取權」。
建立持續性具體化檢視表
建立持續性具體化檢視表前,請先完成下列事項:
- 選用:最佳做法是為執行個體中的叢集啟用自動調度資源,確保叢集在 Bigtable 處理及同步處理持續具體化檢視區塊時,可視需要擴充,並處理任何額外的儲存空間用量。
- 找出您有權讀取的 Bigtable 資料表,做為持續具體化檢視的來源。
- 準備定義持續性具體化檢視區的 SQL 查詢。如需查詢規定,請參閱「持續性 materialized view 查詢」。
建立持續性 materialized view 後,可能需要幾分鐘才會生效,並可供查詢。您可以查看檢視畫面的指標,監控檢視畫面的進度。
主控台
在 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 做為資料表 ID。INSTANCE
:要建立連續具體化檢視區塊的執行個體 ID。必須與來源資料表位於相同執行個體。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
:要更新的連續具體化檢視表的專屬 IDINSTANCE
:包含持續性 materialized view 的執行個體 IDDELETION_PROTECTION
:true
或false
刪除持續性具體化檢視表
您可以刪除未啟用防刪除功能的連續具體化檢視區塊。這項作業無法復原。
主控台
在 Google Cloud 控制台中開啟 Bigtable 執行個體清單。
從清單中選取執行個體。
在導覽窗格中,按一下「Bigtable Studio」。
展開「具體化檢視表」。
找到要刪除的檢視畫面,然後按一下旁邊的 more_vert 動作選單,再按一下「刪除」。
gcloud
如要刪除連續具體化檢視區塊,請使用 gcloud beta bigtable materialized-views delete
指令:
gcloud beta bigtable materialized-views delete VIEW \
--instance=INSTANCE
更改下列內容:
VIEW
:要刪除的持續具體化檢視區塊專屬 IDINSTANCE
:包含持續性具體化檢視區塊的執行個體 ID
取得持續性 materialized view 清單
您可以查看執行個體的持續性具體化檢視清單。
主控台
在 Google Cloud 控制台中開啟 Bigtable 執行個體清單。
從清單中選取執行個體。
在導覽窗格中,按一下「Bigtable Studio」。系統會顯示持續性 materialized view 清單。
選用:系統會列出執行個體中的前 10 個檢視畫面。如要查看另外 10 個,請按一下「顯示更多」。
gcloud
如要列出執行個體的所有連續具體化檢視區塊,請使用 gcloud bigtable materialized-views list
指令。
gcloud bigtable materialized-views list --instance=INSTANCE
將 INSTANCE
替換為執行個體 ID。