建立資料表本機副本
本文說明如何使用 CREATE TABLE CLONE
SQL 陳述式、bq cp
指令或 jobs.insert
API 呼叫,將資料表複製到資料表複本。本文件適用於熟悉資料表複本的使用者。
權限與角色
本節說明建立資料表複本時所需的身分與存取權管理 (IAM) 權限,以及授予這些權限的預先定義 IAM 角色。
權限
如要建立資料表複本,您必須具備下列權限:
權限 | 資源 |
---|---|
以下所有項目:bigquery.tables.get bigquery.tables.getData |
要複製的表格。 |
bigquery.tables.create bigquery.tables.updateData
|
包含資料表複本的資料集。 |
角色
提供必要權限的預先定義 BigQuery 角色如下:
角色 | 資源 |
---|---|
下列任一項:bigquery.dataViewer bigquery.dataEditor bigquery.dataOwner bigquery.admin
|
要複製的表格。 |
下列任一項:bigquery.dataEditor bigquery.dataOwner bigquery.admin
|
包含新表格複本的資料集。 |
建立表格複本
使用 GoogleSQL、bq 指令列工具或 BigQuery API 建立資料表複本。
SQL
如要複製資料表,請使用 CREATE TABLE CLONE 陳述式。
前往 Google Cloud 控制台的「BigQuery」頁面。
在查詢編輯器中輸入以下陳述式:
CREATE TABLE myproject.myDataset_backup.myTableClone CLONE myproject.myDataset.myTable;
按一下
「Run」。
如要進一步瞭解如何執行查詢,請參閱「執行互動式查詢」一文。
更改下列內容:
PROJECT
是目標專案的專案 ID。這個專案必須與包含要複製的資料表的專案位於相同機構。DATASET
是目標資料集的名稱。這個資料集必須與包含要複製資料表的資料集位於同一個地區。CLONE_NAME
是您要建立的資料表複本名稱。
bq
使用加上 --clone
旗標的 bq cp
指令:
bq cp --clone --no_clobber project1:myDataset.myTable PROJECT:DATASET.CLONE_NAME
更改下列內容:
PROJECT
是目標專案的專案 ID。這個專案必須與包含要複製的資料表的專案位於相同機構。DATASET
是目標資料集的名稱。這個資料集必須與包含要複製資料表的資料集位於同一個地區。如果資料集與包含要複製資料表的資料集位於不同地區,系統會複製完整資料表。CLONE_NAME
是您要建立的資料表複本名稱。
必須使用 --no_clobber
旗標。
如果您要在與基礎資料表相同的專案中建立複本,可以略過指定專案,如下所示:
bq cp --clone --no_clobber myDataset.myTable DATASET.CLONE_NAME
API
呼叫 jobs.insert
方法,並將 operationType
欄位設為 CLONE
:
參數 | 值 |
---|---|
projectId |
執行工作的專案專案 ID。 |
要求主體 | { "configuration": { "copy": { "sourceTables": [ { "projectId": "myProject", "datasetId": "myDataset", "tableId": "myTable" } ], "destinationTable": { "projectId": "PROJECT", "datasetId": "DATASET", "tableId": "CLONE_NAME" }, "operationType": "CLONE", "writeDisposition": "WRITE_EMPTY", } } } |
更改下列內容:
PROJECT
是目標專案的專案 ID。這個專案必須與包含要複製的資料表的專案位於相同機構。DATASET
是目標資料集的名稱。這個資料集必須與包含要複製資料表的資料集位於同一個地區。如果資料集與包含要複製資料表的資料集位於不同地區,系統會複製完整的資料表。CLONE_NAME
是您要建立的資料表複本名稱。
存取權控管
建立表格複本時,系統會將表格複本的存取權設為以下方式:
- 將資料列層級存取權政策從基礎資料表複製到資料表複本。
- 系統會將資料欄層級存取權政策從基礎資料表複製到資料表複本。
資料表層級存取權的判斷方式如下:
後續步驟
- 建立表格複本後,您可以像使用標準表格一樣使用該複本。詳情請參閱「管理資料表」。