管理具體化檢視表副本
本文說明如何在 BigQuery 中管理具體化檢視表副本。
BigQuery 管理具體化檢視表副本時,可執行下列作業:
如要進一步瞭解具體化檢視區塊副本,請參閱下列資源:
事前準備
授予身分與存取權管理 (IAM) 角色,讓使用者擁有執行本文各項工作所需的權限。執行工作所需的權限 (如有) 會列在工作「必要權限」部分。
列出具體化檢視表副本
您可以透過 Google Cloud 控制台列出具體化檢視區塊副本。
所需權限
如要列出資料集中的具體化檢視表副本,您需要 bigquery.tables.list
IAM 權限。
下列每個預先定義的 IAM 角色都包含必要權限,可在資料集中列出具體化檢視區塊副本:
roles/bigquery.user
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
roles/bigquery.dataOwner
roles/bigquery.dataEditor
roles/bigquery.admin
如要進一步瞭解 IAM 中的 IAM 角色和權限,請參閱預先定義的角色和權限。
如要列出資料集中的具體化檢視表副本:
在左側窗格中,按一下「Explorer」
:如果沒有看到左側窗格,請按一下「展開左側窗格」圖示
開啟窗格。在「Explorer」窗格中展開專案,按一下「Datasets」,然後按一下資料集。
依序點選「總覽」>「表格」。捲動清單來檢視該資料集中的資料表,資料表、檢視區塊和具體化檢視區塊在「類型」欄中會以不同值表示。具體化檢視表副本的值與具體化檢視表相同。
取得具體化檢視副本的相關資訊
您可以使用 SQL、bq 指令列工具或 BigQuery API,取得具體化檢視副本的相關資訊。
所需權限
如要查詢具體化檢視表副本的相關資訊,您必須具備下列身分與存取權管理 (IAM) 權限:
bigquery.tables.get
bigquery.tables.list
bigquery.routines.get
bigquery.routines.list
下列每個預先定義的 IAM 角色都包含上述權限:
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
roles/bigquery.admin
如要進一步瞭解 BigQuery 權限,請參閱「使用 IAM 控管存取權」。
如要取得 materialized view 副本的相關資訊,包括來源 materialized view:
SQL
如要取得具體化檢視表副本的相關資訊,請查詢 INFORMATION_SCHEMA.TABLES
檢視區塊:
前往 Google Cloud 控制台的「BigQuery」頁面。
在查詢編輯器中輸入下列陳述式:
SELECT * FROM PROJECT_ID.DATASET_ID.INFORMATION_SCHEMA.TABLES WHERE table_type = 'MATERIALIZED VIEW';
請替換下列項目:
PROJECT_ID
:包含具體化檢視副本的專案名稱DATASET_ID
:包含具體化檢視表副本的資料集名稱
按一下「執行」
。
如要進一步瞭解如何執行查詢,請參閱「執行互動式查詢」。
bq
使用 bq show
指令:
bq show --project=project_id --format=prettyjson dataset.materialized_view_replica
更改下列內容:
- project_id:專案 ID。如要取得預設專案以外專案中具體化檢視副本的相關資訊,只需加入這個旗標即可。
- dataset:包含具體化檢視副本的資料集名稱。
- materialized_view_replica:要取得資訊的具體化檢視副本名稱。
範例:
輸入下列指令,即可顯示 myproject
專案中 report_views
資料集內具體化檢視表副本 my_mv_replica
的相關資訊。
bq show --project=myproject --format=prettyjson report_views.my_mv_replica
API
如要使用 API 取得具體化檢視表副本資訊,請呼叫 tables.get
方法。
刪除具體化檢視表副本
您可以透過 Google Cloud 控制台刪除具體化檢視表副本。
所需權限
如要刪除具體化檢視副本,您需要 bigquery.tables.delete
IAM 權限。
下列預先定義的 IAM 角色都包含刪除具體化檢視副本所需的權限:
bigquery.dataEditor
bigquery.dataOwner
bigquery.admin
如要進一步瞭解 BigQuery Identity and Access Management (IAM),請參閱「預先定義的角色與權限」一文。
在左側窗格中,按一下「Explorer」
:在「Explorer」窗格中展開專案,按一下「Datasets」,然後按一下資料集。
依序點選「Overview」>「Tables」,然後點選具體化檢視副本。
點選「刪除」。
在「Delete materialized view?」(要刪除具體化檢視區塊嗎?) 對話方塊中,在欄位中輸入
delete
,然後按一下「Delete」(刪除)。