使用轉移功能

使用 BigQuery 資料移轉服務建立移轉後,您可以:

  • 取得移轉設定的相關資訊
  • 列出移轉設定
  • 查看移轉的執行紀錄
  • 查看移轉執行詳細資料,如紀錄訊息
  • 更新移轉
  • 設定補充作業
  • 更新憑證
  • 停用移轉
  • 刪除移轉

取得移轉設定的相關資訊

您可以在建立移轉後,取得移轉設定的相關資訊。這些設定包括您在建立移轉時提供的值。

取得移轉相關資訊必須擁有 bigquery.transfers.get 權限。以下是擁有 bigquery.transfers.get 權限的預先定義 IAM 角色:

  • bigquery.admin
  • bigquery.user

獲得 bigquery.transfers.get 權限授予的使用者可查看專案中所有移轉的相關資訊。

如要深入瞭解 BigQuery 中的 IAM 角色,請參閱存取權控管

如何取得移轉設定的相關資訊:

傳統版 UI

  1. 前往 BigQuery 網頁版 UI。

    前往 BigQuery 網頁版 UI

  2. 按一下 [Transfers]

  3. 在「Transfers」(移轉作業) 頁面中,按一下適當的移轉項目。

  4. 移轉設定會顯示在「Run History」(執行記錄) 上方的屬性頁面中。以下範例顯示 Google Ads 移轉的設定屬性。

    移轉設定

指令列

輸入 bq show 指令並提供移轉設定的資源名稱。--format 標記可用來控管輸出格式。

bq show --format=prettyjson --transfer_config [RESOURCE_NAME]

其中:

舉例來說,您可以輸入下列指令來顯示移轉設定 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7

bq show --format=prettyjson --transfer_config projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7

API

使用 projects.locations.transferConfigs.get 方法並利用 name 參數提供移轉設定。

列出移轉設定

列出專案中的移轉設定必須擁有 bigquery.transfers.get 權限。以下是擁有 bigquery.transfers.get 權限的預先定義 IAM 角色:

  • bigquery.admin
  • bigquery.user

獲得 bigquery.transfers.get 權限授予的使用者可列出專案中的所有移轉。

如要深入瞭解 BigQuery 中的 IAM 角色,請參閱存取權控管

如何列出專案中的移轉設定:

傳統版 UI

  1. 前往 BigQuery 網頁版 UI。

    前往 BigQuery 網頁版 UI

  2. 按一下 [Transfers] (移轉作業)。移轉設定會顯示在「Transfers」(移轉作業) 頁面上方,並按照位置分組。

指令列

如要按照位置列出專案的所有移轉設定,請輸入 bq ls 指令並提供 --transfer_location--transfer_config 標記。您也可以提供 --project_id 標記,用以指定特定的專案。如未指定 --project_id,系統會使用預設的專案。--format 標記可用來控管輸出格式。

如要列出特定資料來源的移轉設定,請提供 --filter 標記。

如要以分頁格式查看特定數目的移轉設定,請用 --max_results 標記指定移轉的數目。這個指令會傳回您使用 --page_token 標記提供的,用於查看下 n 個設定的頁面憑證。

bq ls --transfer_config --transfer_location=[LOCATION] --project_id=[PROJECT_ID] --max_results=[INTEGER] --filter=dataSourceIds:[DATA_SOURCES]

其中:

  • [LOCATION] 是移轉設定的位置。此位置是您在建立移轉時指定的位置。
  • [PROJECT_ID] 是您的專案 ID。
  • [INTEGER] 是每頁顯示的結果數。
  • [DATA_SOURCES] 是以下其中之一: <<../_shared/_cli-transfer-types.md>>

範例:

輸入下列指令,顯示您預設專案中所有位於美國的移轉設定。使用 --format 標記控制輸出。

bq ls --format=prettyjson --transfer_config --transfer_location=us

輸入下列指令,顯示專案 ID myproject 所有位於美國的移轉設定。

bq ls --transfer_config --transfer_location=us --project_id=myproject

輸入下列指令,列出 3 個最近的移轉設定。

bq ls --transfer_config --transfer_location=us --project_id=myproject --max_results=3

這個指令會傳回下一頁憑證。複製頁面憑證並在 bq ls 指令中提供,即可查看下 3 個結果。

bq ls --transfer_config --transfer_location=us --project_id=myproject --max_results=3 --page_token=AB1CdEfg_hIJKL

輸入下列指令,列出專案 ID myproject 的 Ads 和 Campaign Manager 移轉設定。

bq ls --transfer_config --transfer_location=us --project_id=myproject --filter=dataSourceIds:dcm_dt,adwords

API

使用 projects.locations.transferConfigs.list 方法並利用 parent 參數提供專案 ID。

查看執行記錄

在執行排定的移轉作業時,系統會為每個移轉設定都保留一個執行紀錄,當中包含成功的移轉執行和失敗的移轉執行。已超過 90 天的移轉執行會自動從執行紀錄中刪除。

查看移轉設定的執行紀錄必須擁有 bigquery.transfers.get 權限。bigquery.user 預先定義的 IAM 角色擁有 bigquery.transfers.get 權限。

如要深入瞭解 BigQuery 中的 IAM 角色,請參閱存取權控管

如何查看移轉設定的執行記錄:

傳統版 UI

  1. 前往 BigQuery 網頁版 UI。

    前往 BigQuery 網頁版 UI

  2. 按一下 [Transfers]

  3. 在「Transfers」頁面中,按一下清單中的適當移轉。

  4. 在屬性頁面中,執行紀錄會顯示在移轉屬性下方。

    執行紀錄

  5. (選用) 取消勾選 [Show only latest run per day] 以查看所有移轉執行。

移轉執行的狀態會以圖形表示並詳述於「State」資料欄中:

圖示 狀態
執行成功圖示 移轉執行成功。
執行失敗圖示 移轉執行失敗。
執行警告圖示 移轉執行成功,但發生警告。除非產生的資料表出現異常,否則執行不會被視為有問題。

指令列

如要列出特定移轉設定的移轉執行,請輸入 bq ls 指令並提供 --transfer_run 標記。您也可以提供 --project_id 標記,用以指定特定的專案。如果 [RESOURCE_NAME] 不含專案資訊,系統會使用 --project_id 值。如未指定 --project_id,系統會使用預設的專案。--format 標記可用來控管輸出格式。

如要查看特定數目的移轉執行,請提供 --max_results 標記。這個指令會傳回您使用 --page_token 標記提供的,用於查看下 n 個設定的頁面憑證。

如要按照執行狀態列出移轉執行,請提供 --filter 標記。

bq ls --transfer_run --max_results=[INTEGER] --transfer_location=[LOCATION] --project_id=[PROJECT_ID] --filter=states:[STATE, ...] [RESOURCE_NAME]

其中:

  • [INTEGER] 是要傳回的結果數。
  • [LOCATION] 是移轉設定的位置。此位置是您在建立移轉時指定的位置。
  • [PROJECT_ID] 是您的專案 ID。
  • [STATE] 是下列其中一種或逗號分隔的清單:
    • SUCCEEDED
    • FAILED
    • PENDING
    • RUNNING
    • CANCELLED
  • [RESOURCE_NAME] 是移轉的資源名稱 (也稱為移轉設定)。如果您不知道移轉的資源名稱,請發出 bq ls --transfer_config --transfer_location=[LOCATION] 指令以列出所有移轉。

範例:

輸入下列指令,顯示移轉設定 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7 最近三次的執行。使用 --format 標記控制輸出。

bq ls --format=prettyjson --transfer_run --max_results=3 --transfer_location=us projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7

這個指令會傳回下一頁憑證。複製該頁面憑證並在 bq ls 指令中提供該憑證,可查看下 3 個結果。

bq ls --format=prettyjson --transfer_run --max_results=3 --page_token=AB1CdEfg_hIJKL --transfer_location=us projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7

輸入下列指令,顯示移轉設定 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7 所有失敗的執行。

bq ls --format=prettyjson --transfer_run --filter=states:FAILED --transfer_location=us projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7

API

使用 projects.locations.transferConfigs.list 方法並利用 parent 參數指定專案 ID。

查看移轉執行詳細資料與記錄訊息

當移轉執行出現在執行紀錄中時,您即可查看包括紀錄訊息、警告和錯誤、執行名稱及開始和結束時間等執行詳細資料。

查看移轉執行詳細資料必須擁有 bigquery.transfers.get 權限。bigquery.user 預先定義的 IAM 角色擁有 bigquery.transfers.get 權限。

如要深入瞭解 BigQuery 中的 IAM 角色,請參閱存取權控管

如何查看移轉執行詳細資料:

傳統版 UI

  1. 前往 BigQuery 網頁版 UI。

    前往 BigQuery 網頁版 UI

  2. 按一下 [Transfers]

  3. 在「Transfers」(移轉作業) 頁面中,按一下適當的移轉項目。

  4. 在屬性頁面中,執行記錄會顯示在移轉屬性下方。點選任何一筆執行記錄,即可檢視詳細資料。

  5. 在執行詳細資料中,記下 Run Name (執行名稱) 及任何錯誤訊息。與 Google Cloud 支援小組聯絡時必須提供這些資訊。執行詳細資料還包括記錄訊息和警告。

    執行詳細資料

指令列

如要查看移轉執行詳細資料,請輸入 bq show 指定並用 --transfer_run 標記提供移轉執行的執行名稱。--format 標記可用來控管輸出格式。

bq show --format=prettyjson --transfer_run [RUN_NAME]

其中:

  • [RUN_NAME] 是移轉執行的執行名稱。您可以使用 bq ls 指令來擷取執行名稱。

範例:

輸入下列指令,顯示移轉執行 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7/runs/1a2b345c-0000-1234-5a67-89de1f12345g 的詳細資料。

bq show --format=prettyjson --transfer_run projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7/runs/1a2b345c-0000-1234-5a67-89de1f12345g

如要查看移轉執行的移轉紀錄訊息,請輸入 bq ls 指令並搭配使用 --transfer_log 標記。您可以使用 --message_type 標記來按照類型篩選紀錄訊息。

如要查看特定數目的紀錄訊息,請提供 --max_results 標記。這個指令會傳回您使用 --page_token 標記提供的,用於查看下 n 個訊息的頁面憑證。

bq ls --transfer_log --max_results=[INTEGER] --message_type=messageTypes:[MESSAGE_TYPE] [RUN_NAME]

其中:

  • [INTEGER] 是要傳回的記錄訊息數。
  • [MESSAGE_TYPE] 是要查看的記錄訊息類型 (單一值或逗號分隔清單):
    • INFO
    • WARNING
    • ERROR
  • [RUN_NAME] 是移轉執行的執行名稱。您可以使用 bq ls 指令來擷取執行名稱。

範例:

輸入下列指令,查看移轉執行 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7/runs/1a2b345c-0000-1234-5a67-89de1f12345g 的前 2 個紀錄訊息。

bq ls --transfer_log --max_results=2 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7/runs/1a2b345c-0000-1234-5a67-89de1f12345g

這個指令會傳回下一頁憑證。複製該頁面憑證並在 bq ls 指令中提供該憑證,可查看下 2 個結果。

bq ls --transfer_log --max_results=2 --page_token=AB1CdEfg_hIJKL projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7/runs/1a2b345c-0000-1234-5a67-89de1f12345g

輸入下列指令,僅查看移轉執行 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7/runs/1a2b345c-0000-1234-5a67-89de1f12345g 的錯誤訊息。

bq ls --transfer_log --message_type=messageTypes:ERROR projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7/runs/1a2b345c-0000-1234-5a67-89de1f12345g

API

使用 projects.transferConfigs.runs.transferLogs.list 方法並利用 parent 參數提供移轉執行的執行名稱。

更新移轉

移轉新增完成後,您即可編輯移轉。您可以編輯任何在移轉建立期間填入的欄位,只有「Source」除外:

  • 目的地資料集
  • 顯示名稱
  • 任何為特定移轉類型指定的參數
  • 執行通知設定

更新移轉必須擁有 bigquery.transfers.update 權限。bigquery.admin 預先定義的 IAM 角色擁有 bigquery.transfers.update 權限。

如要深入瞭解 BigQuery 中的 IAM 角色,請參閱存取權控管

如何更新移轉:

傳統版 UI

  1. 前往 BigQuery 網頁版 UI。

    前往 BigQuery 網頁版 UI

  2. 按一下 [Transfers]

  3. 在「Transfers」頁面中,按一下清單中的適當移轉。

  4. 按一下 [Edit],更新移轉設定。

  5. 完成變更之後,按一下 [Save]

指令列

輸入 bq update 指令並用 --transfer_config 標記提供移轉設定的資源名稱,以及提供 --display_name--target_dataset--refresh_window_days--params 標記。

bq update --display_name='[NAME]' --target_dataset=[DATASET] --params='[PARAMETERS]' --refresh_window_days=[INTEGER] --transfer_config [RESOURCE_NAME]

其中:

  • --display_name 是移轉設定的顯示名稱。
  • --target_dataset 是移轉設定的目標資料集。
  • --params 含有 JSON 格式的移轉設定參數。例如:--params='{"param":"param_value"}'。以下為可編輯的參數:
    • Google Ads:customer_id
    • Campaign Manager:bucketnetwork_id
    • Google Ad Manager:bucketnetwork_code
    • Google Play:buckettable_suffix
    • YouTube 頻道:page_idtable_suffix
    • YouTube Content Owner:content_owner_idtable_suffix
  • [INTEGER] 是從 0 到 30 的值。如要深入瞭解如何設定重新整理視窗,請參閱相關移轉類型的說明文件。
  • [RESOURCE_NAME] 是移轉的資源名稱 (也稱為移轉設定)。如果您不知道移轉的資源名稱,請發出 bq ls --transfer_config --transfer_location=[LOCATION] 指令以列出所有移轉。

範例:

輸入下列指令,更新 Google Ads 移轉 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7 的顯示名稱、目標資料集、重新整理視窗和參數。

bq update --display_name='My changed transfer' --target_dataset=mydataset2 --params='{"customer_id":"123-123-5678"}' --refresh_window_days=3 --transfer_config projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7

API

使用 projects.transferConfigs.patch 方法並利用 transferConfig.name 參數提供移轉的資源名稱。如果您不知道移轉的資源名稱,請發出 bq ls --transfer_config --transfer_location=[LOCATION] 指令以列出所有移轉,或呼叫 projects.locations.transferConfigs.list 方法並利用 parent 參數提供專案 ID。

設定補充作業

您可以隨時手動啟動資料補充作業。除了來源限制之外,BigQuery 資料移轉服務還支援最多 180 天的資料補充要求。

在進行大範圍日期的補充作業時,請將您的補充作業要求分成 180 天內的小塊作業,並在完成前一個補充作業要求後,再建立另一個補充作業要求。

如要深入瞭解補充作業可處理的資料量,請參閱相關資料來源的說明文件。

請注意,Cloud Storage (測試版) 移轉並不支援補充作業。不過您可以設定 Cloud Storage 移轉的重新整理執行作業

排程補充作業必須擁有 bigquery.transfers.update 權限。bigquery.admin 預先定義的 IAM 角色擁有 bigquery.transfers.update 權限。

如要深入瞭解 BigQuery 中的 IAM 角色,請參閱存取權控管

如何安排執行補充作業:

傳統版 UI

  1. 前往 BigQuery 網頁版 UI。 BigQuery 網頁版 UI
  2. 按一下 [Transfers] (移轉作業)
  3. 在「Transfers」頁面中,按一下適當的移轉項目。
  4. 按一下 [Schedule Backfill]

    排程補充作業

  5. 在「Schedule Run」對話方塊中:

    • 在「Data Start Date」,輸入或選擇 MM/DD/YYYY 格式的適當日期。
    • 在「Data End Date」,輸入或選擇 MM/DD/YYYY 格式的適當日期。
    • 按一下 [OK]

    排程補充作業

指令列

輸入 bq mk 指令,提供 --transfer_run 標記,並指定 --start_time--end_time

bq mk --transfer_run --start_time='[START_TIME]' --end_time='[END_TIME]' [RESOURCE_NAME]

其中:

  • [START_TIME][END_TIME] 是以 Z 結尾或包含有效時區位移的時間戳記。例如:

    • 2017-08-19T12:11:35.00Z
    • 2017-05-25T00:00:00+00:00
  • [RESOURCE_NAME] 是移轉的資源名稱 (也稱為移轉設定)。如果您不知道移轉的資源名稱,請發出 bq ls --transfer_config --transfer_location=[LOCATION] 指令以列出所有移轉。

範例:

輸入下列指令,排程移轉設定 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7 的補充作業。

bq mk --transfer_run --start_time 2017-05-25T00:00:00Z --end_time 2017-05-25T00:00:00Z projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7

API

使用 projects.locations.transferConfigs.scheduleRuns 方法並利用 parent 參數提供移轉設定資源。

更新憑證

移轉使用的憑證為建立該移轉的使用者的憑證。如您需要變更移轉設定所連結的使用者,您可以更新移轉的憑證。當建立移轉的使用者已不在您的組織時,這將是個實用的變更方法。

更新憑證必須擁有 bigquery.transfers.update 權限。bigquery.admin 預先定義的 IAM 角色擁有 bigquery.transfers.update 權限。

如要深入瞭解 BigQuery 中的 IAM 角色,請參閱存取權控管

如何更新移轉的憑證:

傳統版 UI

  1. 前往 BigQuery 網頁版 UI。 BigQuery 網頁版 UI
  2. 按一下 [Transfers] (移轉作業)
  3. 在「Transfers」頁面中,按一下適當的移轉項目。
  4. 按一下 [Update credentials]
  5. 系統出現提示時,按一下 [OK] (確定)
  6. 登入您的 Google 帳戶並按一下 [Allow] (允許),讓 BigQuery 移轉服務有權限查看您的報表資料,以及存取並管理 BigQuery 中的資料。您必須允許來自 bigquery.cloud.google.com 的彈出式視窗,才能查看權限視窗。

指令列

輸入 bq update 指令並用 --transfer_config 標記提供移轉設定的資源名稱,以及提供 --update_credentials 標記。

bq update --update_credentials=[BOOLEAN] --transfer_config [RESOURCE_NAME]

其中:

  • --update_credentials 是一個表示是否應為移轉設定更新憑證的布林值。
  • [RESOURCE_NAME] 是移轉的資源名稱 (也稱為移轉設定)。如果您不知道移轉的資源名稱,請發出 bq ls --transfer_config --transfer_location=[LOCATION] 指令以列出所有移轉。

範例:

輸入下列指令,更新 Google Ads 移轉 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7 的憑證。

bq update --update_credentials=true --transfer_config projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7

API

使用 projects.transferConfigs.patch 方法並提供 authorizationCodeupdateMask 參數。

停用移轉

當您停用移轉時,移轉名稱會被加上 [DISABLED]。停用移轉時,您將無法排程新的移轉執行,也無法進行新的補充作業。正在進行中的移轉執行將會如常完成。

停用移轉並不會移除任何已經移轉至 BigQuery 的資料。先前已移轉的資料會產生標準的 BigQuery 儲存空間費用,直到您刪除資料集刪除資料表為止。

停用移轉必須擁有 bigquery.transfers.update 權限。bigquery.admin 預先定義的 IAM 角色擁有 bigquery.transfers.update 權限。

如要深入瞭解 BigQuery 中的 IAM 角色,請參閱存取權控管

如何停用移轉:

傳統版 UI

  1. 使用傳統 BigQuery 網頁版 UI

    前往 BigQuery 傳統網頁版 UI

  2. 按一下 [Transfers] (移轉作業)

  3. 按一下您要停用的移轉。

  4. 在移轉屬性頁面上,按一下 [Disabled]

    停用移轉

  5. 已停用移轉後,按一下 [Save]

指令列

CLI 不支援停用移轉。

API

使用 projects.locations.transferConfigs.patch 方法並在 projects.locations.transferConfig 資源中,將 disabled 設為 true

刪除移轉

刪除移轉時,您將無法排程新的移轉執行。任何正在進行中的移轉執行將會停止。

刪除移轉並不會移除任何已經移轉至 BigQuery 的資料。先前已移轉的資料會產生標準的 BigQuery 儲存空間費用,直到您刪除資料集刪除資料表為止。

刪除移轉必須擁有 bigquery.transfers.update 權限。bigquery.admin 預先定義的 IAM 角色擁有 bigquery.transfers.update 權限。

如要深入瞭解 BigQuery 中的 IAM 角色,請參閱存取權控管

如何刪除移轉:

傳統版 UI

  1. 前往 BigQuery 網頁版 UI。

    前往傳統 BigQuery 網頁版 UI

  2. 按一下 [Transfers] (移轉作業)

  3. 按一下您要編輯的移轉。

  4. 在移轉屬性頁面上,按一下 [Delete]

  5. 系統提示時,按一下 [OK],移除移轉。

指令列

輸入 bq rm 指令並提供移轉設定的資源名稱。您可以使用 -f 標記來刪除移轉設定,而無需確認。

bq rm -f --transfer_config [RESOURCE_NAME]

其中:

例如,輸入下列指令,刪除移轉設定 projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7

bq rm --transfer_config projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7

API

使用 projects.locations.transferConfigs.delete 方法並利用 name 參數提供您要刪除的資源。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁