排解移轉設定問題

本文件旨在協助您排解設定 BigQuery 資料移轉服務移轉作業時最常遇到的問題。但不會列出所有可能出現的錯誤訊息或問題。

如果您遇到本文未說明的問題,可以要求支援

與 Cloud Customer Care 團隊聯絡前,請記下移轉設定和移轉執行作業的詳細資料。如要進一步瞭解如何取得這些詳細資料,請參閱「取得移轉詳細資料」和「查看移轉執行詳細資料與記錄訊息」。

檢查錯誤

如果初始移轉執行作業失敗,您可以查看執行記錄中的詳細資料。您可以根據這份文件,利用執行記錄中列出的錯誤找出適當的解決方法。

您也可以使用記錄瀏覽器查看特定轉移工作的錯誤訊息。下列「記錄檔檢視器」篩選器會傳回特定移轉設定工作相關資訊,以及任何錯誤訊息:

resource.type="bigquery_dts_config"
labels.run_id="RUN_ID"
resource.labels.config_id="CONFIG_ID"

更改下列內容:

  • RUN_ID:特定工作執行作業的 ID 編號
  • CONFIG_ID:轉移設定工作 ID 編號

與客戶服務團隊聯絡前,請從執行記錄或「記錄檢視器」擷取任何相關資訊,包括任何錯誤訊息。

如果您使用以事件為依據的移轉作業,以事件為依據的移轉設定可能無法觸發移轉作業。您可以在「執行記錄」頁面或「設定」頁面頂端查看錯誤訊息。

一般問題

診斷一般移轉問題時,請確認下列事項:

  • 針對移轉類型適用的說明文件頁面,確認是否已完成其中「事前準備」一節所述的所有步驟。
  • 移轉設定屬性是否正確。
  • 建立移轉作業所使用的使用者帳戶是否擁有基礎資源的存取權。

如果移轉設定正確,且取得適當權限,請參閱下列常見問題的解決方案。

錯誤:An unexpected issue was encountered. If this issue persists, please contact customer support.
解決方法:這類錯誤通常表示 BigQuery 發生暫時性中斷或問題。請等待約 2 小時以解決問題。如果問題仍未解決,請聯絡支援團隊
錯誤:Quota Exceeded.

解決方法:移轉作業必須符合 BigQuery 的載入工作配額規定。如果需要提高配額,請與 Google Cloud 業務代表聯絡。詳情請參閱「配額與限制」。

如果您要將 Cloud Billing 匯出資料載入至 BigQuery,可能會遇到 Quota Exceeded 錯誤。雲端帳單匯出表格和 BigQuery 資料移轉服務服務建立的目的地 BigQuery 表格都會分割。設定這類 BigQuery 資料移轉服務工作時,如果選擇「覆寫」選項,則會因匯出資料量而導致配額錯誤。如要瞭解如何排解配額問題,請參閱「排解配額和限制錯誤」。

如果錯誤是因為 Cloud Billing 匯出作業的 BigQuery 資料移轉服務,請注意,由於個別 Cloud Billing Export 資料表已劃分,因此由 BigQuery 資料移轉服務建立的目標資料表也是如此,因此在設定這類資料移轉作業時選擇「覆寫」選項,將導致 (DML) 配額錯誤,具體情況取決於帳單帳戶的舊舊程度。如要瞭解如何排解配額問題,請參閱「排解配額和限制錯誤」。

錯誤:The caller does not have permission.

解決方法:請確認 Google Cloud 控制台中的登入帳戶,與建立轉移作業時選取的 BigQuery 資料移轉服務帳戶相同。

  • Google Cloud 控制台中登入的帳戶:

    排解權限問題

  • 請選擇要繼續使用 BigQuery 資料移轉服務的帳戶:

    排解權限問題

錯誤:Access Denied: ... Permission bigquery.tables.get denied on table ...

解決方法:確認 BigQuery 資料移轉服務服務代理程式是否已在目標資料集中獲得 bigquery.dataEditor 角色。在建立及更新轉移作業時,系統會自動套用這項授權,但之後可能會手動修改存取權政策。如要重新授予權限,請參閱「授予資料集存取權」。

錯誤:region violates constraint constraints/gcp.resourceLocations on the resource projects/project_id

解決方法:如果使用者嘗試在受限制的位置建立轉移設定 (如位置限制機構政策所述),就會發生這個錯誤。如要解決這個問題,您可以變更機構政策,讓系統允許該區域,或是將移轉設定變更為位於機構政策未限制的區域內的目的地資料集。

錯誤:Please look into the errors[] collection for more details.

解決方法:資料移轉失敗時,可能會發生這個錯誤。如要進一步瞭解資料轉移失敗的原因,您可以使用 Cloud Logging 查看記錄。您可以使用移轉 run_id 搜尋功能,找出特定執行作業的記錄

授權和權限問題

以下是從不同資料來源轉移資料時,可能會遇到的常見權限錯誤:

錯誤:BigQuery Data Transfer Service is not enabled for <project_id>
錯誤:BigQuery Data Transfer Service has not been used in project <project_id> before or it is disabled ...

解決方法:請按照下列步驟確認服務代理角色是否已授予:

  1. 在 Google Cloud 控制台中,前往「IAM & Admin」頁面。

    前往「IAM & Admin」(IAM 與管理)

  2. 選取「包含 Google提供的角色授予項目」核取方塊。

  3. 請確認系統顯示名稱為 service-<project_number>@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com 的服務帳戶,或已將 BigQuery 資料移轉服務代理人角色授予 BigQuery 資料移轉服務。

    確認服務帳戶是否具備服務代理人角色。

如果系統未顯示服務帳戶,或是該帳戶未獲得 BigQuery 資料移轉服務服務代理人角色,請在 Google Cloud 主控台中授予預先定義的角色,或是執行下列 Google Cloud CLI 指令:

gcloud projects add-iam-policy-binding PROJECT_NUMBER \
--member serviceAccount:service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com \
--role roles/bigquerydatatransfer.serviceAgent

PROJECT_NUMBER 替換為與此服務帳戶相關聯的專案編號。

錯誤:There was an error loading this table. Check that the table exists and that you have the correct permissions.

解決方法:

  1. 前往 Google Cloud 控制台的「BigQuery」頁面。

    前往 BigQuery

  2. 按一下轉移作業使用的目的地資料集。

  3. 依序點選「共用」選單和「權限」

  4. 展開「BigQuery Data Editor」角色。

  5. 確認 BigQuery 資料移轉服務服務代理人已加入這個角色。如果沒有,請將 BigQuery 資料編輯者 (roles/bigquery.dataEditor) 角色授予 BigQuery 資料移轉服務服務代理人。

確認已新增 BigQuery Data Editor 角色。

錯誤:A permission denied error was encountered: PERMISSION_DENIED. Please ensure that the user account setting up the transfer config has the necessary permissions, and that the configuration settings are correct

解決方法:

  1. 在 Google Cloud 控制台中,前往「資料移轉」頁面。

    前往「資料移轉」

  2. 按一下失敗的轉移作業,然後選取「Configuration」分頁標籤。

  3. 確認「使用者」欄位中列出的轉移擁有者是否具備資料來源的所有必要權限。

如果轉移擁有者沒有所有必要權限,請更新憑證,授予必要權限。您也可以將轉移擁有者變更為擁有必要權限的其他使用者。

錯誤:Authentication failure: User Id not found. Error code: INVALID_USERID

解決方法:轉移擁有者有無效的使用者 ID。更新憑證,將轉移擁有者變更為其他使用者。如果您使用的是服務帳戶,請務必確認執行資料移轉作業的帳戶具備所有使用服務帳戶的必要權限

錯誤:The user does not have permission

解決方法:請確認轉移擁有者是服務帳戶,且服務已設定所有必要權限。另一種可能情況是,所使用的服務帳戶是在不同專案下建立,而非用於建立這項轉移作業的專案。如要解決跨專案權限問題,請參閱下列資源:

錯誤:HttpError 403 when requesting returned "The caller does not have permission"

googleapiclient.errors.HttpError: <HttpError 403 when requesting returned "The caller does not have permission". Details: "The caller does not have permission">

當您嘗試使用服務帳戶設定排程查詢時,可能會出現這則錯誤訊息。

解決方法:請確認服務帳戶具備排定或修改排程查詢所需的權限,並確保設定排程查詢的使用者有權存取服務帳戶

如果已指派正確的權限,但仍遇到錯誤,請確認是否已預設在專案上強制執行「停用跨專案服務帳戶使用權」政策。如要在 Google Cloud 控制台中查看政策,請依序前往「IAM 與管理」>「組織政策」,然後搜尋政策。

確認是否對服務帳戶強制執行跨專案服務帳戶使用政策。

如果系統已強制執行「停用跨專案服務帳戶使用權」政策,您可以按照下列步驟停用這項政策:

  1. 使用 Google Cloud 控制台,依序前往「IAM & Admin」(IAM 與管理) >「Service Accounts」(服務帳戶),找出與專案相關聯的服務帳戶。這個檢視畫面會顯示目前專案的所有服務帳戶。
  2. 使用下列指令,在服務帳戶所在的專案中停用政策。如要停用這項政策,使用者必須是機構政策管理員。只有機構管理員可以授予使用者這個角色。
gcloud resource-manager org-policies disable-enforce iam.disableCrossProjectServiceAccountUsage --project=[PROJECT-ID]

事件驅動移轉設定問題

以下是建立事件驅動移轉作業時可能遇到的常見問題。

錯誤:Data Transfer Service is not authorized to pull message from the provided Pub/Sub subscription.

解決方法:請確認 BigQuery 資料移轉服務服務代理人是否已獲授 pubsub.subscriber 角色

  1. 前往 Google Cloud 控制台的「Pub/Sub」頁面。

    前往 Pub/Sub

  2. 選取在以事件為依據的移轉作業中使用的 Pub/Sub 訂閱項目。

  3. 如果資訊面板未顯示,請按一下右上角的「顯示資訊面板」

  4. 在「Permissions」分頁中,確認 BigQuery 資料移轉服務服務代理人具有 pubsub.subscriber 角色

確認服務代理是否在訂閱項目中使用 pubsub.subscriber。

如果服務代理未獲得 pubsub.subscriber 角色,按一下 「Add principal」,將 pubsub.subscriber 角色授予 service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com

錯誤:Cloud Pub/Sub API has not been used in project PROJECT_NUMBER before or it is disabled.

解決方法:請確認專案已啟用 Cloud Pub/Sub API:

  1. 在 Google Cloud 控制台中,前往「API 和服務」頁面。

    前往「API 和服務」頁面

  2. 按一下「啟用 API 和服務」

  3. 搜尋「Cloud Pub/Sub API」,選取第一個搜尋結果,然後按一下「啟用」

錯誤:Data Transfer Service does not have required permission to use project quota of project PROJECT_NUMBER to access Pub/Sub.

解決方法:請確認 BigQuery 資料移轉服務服務代理人是否已獲授 serviceusage.serviceUsageConsumer 角色

  1. 在 Google Cloud 控制台中,前往「IAM & Admin」頁面。

    前往「IAM & Admin」(IAM 與管理)

  2. 選取「包含 Google提供的角色授予項目」核取方塊。

  3. 確認系統顯示名稱為 service-<project_number>@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com 的服務帳戶,且已授予服務用量消費者角色

    確認服務帳戶是否具備 serviceusage.serviceUsageConsumer 角色。

問題:使用 Cloud Storage 事件驅動移轉功能時,在 Cloud Storage 值區上傳或更新檔案後,系統不會觸發移轉作業。

接收事件後,系統不會立即觸發轉移作業。觸發轉移作業可能需要幾分鐘的時間。如要查看下次轉移作業的狀態,請在執行記錄中查看「下次執行的目標日期」欄位。這個欄位會顯示下次執行作業的排程時間,如果沒有收到任何事件,則會顯示「等待事件以便排定下次執行作業」。如果你已在 Cloud Storage bucket 中上傳或更新檔案,但下次執行的目標日期未更新,且 10 到 20 分鐘內沒有觸發執行作業,請參閱以下解決方案。

解決方法:請確認在轉移設定中指定的 Pub/Sub 訂閱項目,是否能夠取得從 Cloud Storage 事件發布的訊息:

  1. 前往 Google Cloud 控制台的「Pub/Sub」頁面。

    前往 Pub/Sub

  2. 選取在以事件為依據的移轉作業中使用的 Pub/Sub 訂閱項目。

  3. 在「指標」分頁中,查看「最舊的未確認訊息存在時間」圖表,看看是否有任何訊息。

確認是否有傳送訊息

如果沒有任何訊息發布,請檢查 Cloud Storage 的 Pub/Sub 通知是否已正確設定。您可以使用下列 Google Cloud CLI 指令,檢查與值區相關聯的通知設定:

gcloud storage buckets notifications list gs://BUCKET_NAME

BUCKET_NAME 替換為您用於通知的值區名稱。如要瞭解如何設定 Cloud Storage 的 Pub/Sub 通知,請參閱「為 Cloud Storage 設定 Pub/Sub 通知」。

如果有訊息,請檢查其他事件驅動轉移設定是否使用相同的 Pub/Sub 訂閱項目。同一個 Pub/Sub 訂閱項目無法由多個事件驅動轉移設定重複使用。如要進一步瞭解事件導向移轉作業,請參閱「事件導向移轉」。

Amazon S3 轉移問題

以下是建立 Amazon S3 移轉作業時常見的錯誤。

Amazon S3 PERMISSION_DENIED 錯誤

錯誤:The AWS Access Key Id you provided does not exist in our records.
解決方法:請確認存取金鑰是否存在,且 ID 正確無誤。
錯誤:The request signature we calculated does not match the signature you provided. Check your key and signing method.
解決方法:確認移轉設定是否有正確的對應機密金鑰存取權金鑰
錯誤:Failed to obtain the location of the source S3 bucket. Additional details: Access Denied
錯誤:Failed to obtain the location of the source S3 bucket. Additional details: HTTP/1.1 403 Forbidden
錯誤:Access Denied (S3 錯誤訊息)
解決方法:請確認 AWS IAM 使用者具備下列操作的權限:
  • 列出 Amazon S3 值區。
  • 取得值區的位置。
  • 讀取值區中的物件。
錯誤:Server unable to initialize object upload.; InvalidObjectState: The operation is not valid for the object's storage class
錯誤:Failed to obtain the location of the source S3 bucket. Additional details: All access to this object has been disabled
解決方法:將任何封存於 Amazon Glacier 的物件還原。在 Amazon S3 中,封存於 Amazon Glacier 的物件在還原之前都無法存取
錯誤:All access to this object has been disabled
解決方法:確認轉移設定中的 Amazon S3 URI 是否正確

Amazon S3 轉移限制錯誤

錯誤:Number of files in transfer exceeds limit of 10,000.
解決方法:評估 Amazon S3 URI 中的萬用字元數量是否可以減少到一個。如果可行,請使用新的轉移設定重試,因為每次轉移執行的檔案數量上限會提高。您也可以評估移轉設定是否可分割為多個移轉設定,每個設定都會移轉部分來源資料。
錯誤:Size of files in transfer exceeds limit of 16492674416640 bytes.
解決方法:評估是否可以將轉移設定分割為多個轉移設定,每個設定轉移部分來源資料。

一般 Amazon S3 問題

問題:檔案已從 Amazon S3 傳輸,但未載入至 BigQuery。

轉移記錄可能類似以下內容:Moving data from Amazon S3 to Google Cloud complete: Moved N object(s). No new files found matching Amazon_S3_URI.

解決方法:確認轉移設定中的 Amazon S3 URI 是否正確。如果轉移設定是為了載入所有含有通用前置字串的檔案,請務必讓 Amazon S3 URI 結尾為萬用字元。舉例來說,如要載入 s3://my-bucket/my-folder/ 中的所有檔案,轉移設定中的 Amazon S3 URI 必須是 s3://my-bucket/my-folder/*,而非僅是 s3://my-bucket/my-folder/

Azure Blob 儲存體轉移問題

以下是建立 Blob Storage 移轉作業時常見的錯誤。

錯誤:Number of files in transfer exceeds the limit of 10,000.
解決方法:將 Blobstore 資料路徑中的萬用字數量減少至 0 或 1,檔案限制就會提高至 10,000,000。您也可以分割成多個轉移設定,每個設定轉移部分來源。
錯誤:Size of files in transfer exceeds the limit of 15 TB.
解決方法:將資料分割成多個移轉設定,每個設定都會移轉部分來源資料。
錯誤:Provided Azure SAS Token does not have required permissions.
解決方法:請確認轉移設定中的 Azure SAS 權杖是否正確。詳情請參閱「共用存取簽章 (SAS)」。
錯誤:Transfer encountered error, status:PERMISSION_DENIED, details:[This request is not authorized to perform this operation.]
解決方法:請確認 BigQuery 資料移轉服務 worker 使用的 IP 範圍已加入許可 IP 清單。詳情請參閱「IP 限制」一節。
問題:檔案從 Blob Storage 轉移,但未載入至 BigQuery。

轉移記錄可能會類似以下內容:Moving data to Google Cloud complete: Moved <var>N</var> object(s). No new files found matching Blob Storage data path.

解決方法:確認移轉設定中的 Blob 儲存體資料路徑是否正確。

Campaign Manager 移轉問題

以下是建立 Campaign Manager 移轉作業時的常見錯誤。

錯誤:Import failed - no data was available for import. Please verify that data existence was expected.
錯誤:No data available for the requested date. Please try an earlier run date or verify that data existence was expected.

解決方法:確認是否使用正確的 ID 來執行移轉作業。如果您使用的 ID 正確無誤,請確認 Campaign Manager Cloud Storage 值區是否含有指定日期範圍內的 Data Transfer 2.0 版檔案。如果檔案存在,請排定受影響日期範圍內的補充作業。如要進一步瞭解如何建立 Campaign Manager 補充作業要求,請參閱「手動觸發移轉或補充作業」。

您可以查看 Cloud Storage 值區中檔案的建立時間,確認檔案在排定移轉作業執行時是否存在。在某些情況下,系統可能會在產生第一批 Campaign Manager 資料移轉檔案之前,排定當天第一個移轉作業。在同一天和隔天後續執行時,系統會載入 Campaign Manager 產生的所有檔案。

錯誤:A permission denied error was encountered: PERMISSION_DENIED. Please ensure that the user account setting up the transfer config has the necessary permissions, and that the configuration settings are correct.

解決方法:建立 Campaign Manager 移轉作業的使用者,必須能夠讀取內含資料移轉 2.0 版檔案的 Cloud Storage 值區。您可以向 Campaign Manager 管理員索取 Cloud Storage 值區相關資訊,並要求存取權。

Google Ads 移轉問題

以下是建立 Google Ads 移轉作業時的常見錯誤。

錯誤:AUTH_ERROR_TWO_STEP_VERIFICATION_NOT_ENROLLED
解決方法:這個錯誤表示在本次移轉作業中使用的 Google Ads 使用者未啟用兩步驟驗證。如要瞭解如何啟用兩步驟驗證,請參閱「開啟兩步驟驗證」。
錯誤:No jobs to start for run
解決方法:這項錯誤表示轉移執行作業沒有啟動載入工作,因為設定無效或在處理期間發生錯誤。請按照下列步驟解決這項錯誤:
  • 查看移轉執行記錄記錄中的錯誤和警告。
  • 如果您嘗試載入的資料表沒有 segments_datesegments_weeksegments_monthsegments_quartersegments_year 欄,則在 run_date 不是最新日期時,系統應會略過載入作業。詳情請參閱「手動觸發 Google Ads 轉移」和「自訂報表」。
  • 如果找不到問題的根本原因,請尋求支援
錯誤:Import failed - no data was available for import. Please verify that data existence was expected.
錯誤:No data available for the requested date. Please try an earlier run date or verify that data existence was expected.
解決方法:如果您在建立 Google Ads 移轉作業時收到這個錯誤,請要求支援並提供錯誤訊息的螢幕截圖。
錯誤:AuthenticationError.NOT_ADS_USER.
解決方法:設定 Google Ads 移轉作業的使用者必須擁有 Google Ads 帳戶/登入資訊。
錯誤:Request is missing required authentication credential
解決方法:使用者或服務帳戶沒有 Google Ads 帳戶存取權。請按照「必要權限」一節的說明,授予使用者或服務帳戶必要權限。
錯誤:ERROR_GETTING_RESPONSE_FROM_BACKEND.
解決方法:如果 Google Ads 移轉作業執行失敗並傳回 ERROR_GETTING_RESPONSE_FROM_BACKEND,請在移轉設定中啟用「排除已移除/停用的項目」選項,並設定補充作業,嘗試擷取在移轉作業執行失敗影響期間內的資料。
警告:Data for the report ClickStats was not available for the specified date.
錯誤:INVALID_DATE_RANGE_FOR_REPORT.
解決方法:如果要回填 90 天前以上的點擊成效報表資料,就會發生這種情況。在這種情況下,您會看到這則警告或錯誤訊息,且 ClickStats 表格不會在指定日期更新。
錯誤:Error while processing report for table table_name for account id account_id. Http(400) Bad Request;
錯誤:AuthorizationError.TWO_STEP_VERIFICATION_NOT_ENROLLED
解決方法:如果與這項轉移作業相關聯的使用者帳戶未啟用兩步驟驗證 (或多重驗證),請為這個帳戶啟用兩步驟驗證,然後重新執行失敗的轉移作業。服務帳戶不必遵守兩步驟驗證規定。
錯誤:Quota exceeded: Your project exceeded quota for imports per project
解決方法:移轉作業必須符合 BigQuery 的載入工作配額規定。如果您達到載入作業的配額上限,請嘗試使用 table_filter、刪除未使用的轉移設定或縮短重新整理時間間隔,以減少不必要的載入作業。如果需要提高配額,請與 Google Cloud 業務代表聯絡。詳情請參閱「配額與限制」。

以下是建立 Google Ad Manager 移轉作業時的常見錯誤。

錯誤:Another transfer run is concurrently processing table.

解決方法:如果在目前移轉作業開始執行時,另一個使用相同移轉設定的移轉作業仍在執行,就可能發生這個錯誤。

  • 如果延遲是由於大型 Google Ad Manager 資料移轉 (Google Ad Manager DT) 檔案所造成,建議您啟用Parquet 格式,以便提升載入效能。
  • 如果延遲是因對照表造成,建議將參數 load_match_tables 設為 false,以便略過對照表。
  • 如果轉移作業的處理時間一再超過目前的重複頻率,請調整重複頻率。
錯誤:No data available for the requested date. Please try an earlier run date or verify that data existence was expected.
錯誤:Import failed - no data was available for import. Please verify that data existence was expected.

解決方法:確認 Google Ad Manager Cloud Storage 值區含有指定日期範圍內的資料移轉檔案。您的 Google Ad Manager 管理員負責管理含有資料移轉檔案的 Cloud Storage 值區。建立 Google Ad Manager 移轉作業的使用者必須是 Google 網上論壇中擁有值區存取權的成員。

您可以試著讀取 Google Ad Manager 資料移轉值區中的檔案,確認是否具備 Cloud Storage 權限。如要進一步瞭解 Google Ad Manager Cloud Storage 值區,請參閱「存取 Google Ad Manager 儲存區塊」。

您可以查看 Cloud Storage 值區中檔案的建立時間,確認檔案在排定移轉作業執行時是否存在。在某些情況下,系統可能會在產生第一批 Google Ad Manager 資料移轉檔案之前,排定當天第一個移轉作業。在同一天和隔天執行後續作業時,系統會載入 Google Ad Manager 產生的所有檔案。

如果檔案是在資料移轉值區且您有讀取權,請排定受影響日期範圍內的補充作業。如需建立 Google Ad Manager 補充作業要求的相關資訊,請參閱「設定補充作業」。

錯誤:AuthenticationError: NO_NETWORKS_TO_ACCESS.

解決方法:確定您具有 Google Ad Manager 網路的讀取權限。如果您在確認網路存取權時需要協助,請與 Google Ad Manager 支援團隊聯絡。

錯誤:Error code 9 : Field field_name?field_name?field_name?RefererURL is unknown.; Table: table_name

解決方法:確定您不是使用小寫的古英語符文字母 (þ) 分隔符號。系統不支援「刺鉤」分隔符。若使用小寫的古英語符文字母,系統會在錯誤訊息中以 ? 表示。

錯誤:Incompatible table partitioning specification. Destination table exists with partitioning specification interval(type:Day,field:) clustering

解決方法:Google Ads Manager 連接器不支援將資料移轉至含有叢集的資料集。請改用不含叢集的資料集。

Google Merchant Center 移轉問題

以下是建立 Google Merchant Center 移轉作業時的常見錯誤。

錯誤:No data to transfer found for the Merchant account. If you have just created this transfer - you may need to wait for up to 90 minutes before the data of your Merchant account are prepared and available for the transfer.
解決方法:如果您使用「Schedule」(排程) 專區中的預設開始日期和時間設定移轉作業,就會收到這個錯誤。如果您使用預設的排程值,第一項移轉作業會在移轉建立後立即開始執行,但由於您的商家帳戶資料尚未準備就緒,因此執行作業會失敗。請先等待 90 分鐘,然後為今日設定補充作業,您也可以選擇等到明天的下一個預定移轉時間。
錯誤:No data to transfer found for Merchant account. This can be because your account currently doesn't have any products.
解決方法:這個錯誤代表你的商家帳戶沒有商品。你將產品新增至商家帳戶之後,移轉作業就會開始執行。
錯誤:Transfer user doesn't have access to the Merchant account. Please verify access in the Users section of the Google Merchant Center.
解決方法:這個錯誤表示設定移轉作業的使用者沒有移轉作業所用商家帳戶的存取權。如要解決這個問題,請前往 Google Merchant Center 驗證並授予缺少的帳戶存取權
錯誤:Transfer user doesn't have user roles that allows access to the product data of the Merchant account. Please verify access and roles in the Users section of the Google Merchant Center.
解決方法:這個錯誤表示設定移轉作業的使用者沒有移轉所用商家帳戶商品資料的存取權。如要解決這個問題,請前往 Google Merchant Center 驗證並授予缺少的使用者角色
錯誤:Historical backfills are currently not supported.
解決方法:如果您為前幾天設定補充作業,就會收到這個錯誤。這是預期中的錯誤。我們目前並不支援過去的補充作業。您只能為今日設定補充作業,在排定的每日執行作業完成後重新整理今日資料。

Google Play 轉移問題

以下是建立 Google Play 移轉作業時的常見錯誤。

錯誤:No jobs to start for run
解決方法:請確認使用者是否具備啟動 Google Play 轉移作業的充分權限,然後確認使用者在設定轉移作業時是否指定正確的 Cloud Storage 值區。如果使用者仍遇到錯誤,您可以要求支援團隊協助
問題:無法將收益和財務報表載入 BigQuery
解決方法:使用者必須具備 View financial data 權限,才能存取 Google Play 財務報表。如要管理開發人員帳戶權限,請參閱「新增開發人員帳戶使用者以及管理各項權限」。

MySQL 轉移問題

以下是建立 MySQL 轉移作業時可能遇到的常見問題。

錯誤:PERMISSION_DENIED. Failed to authenticate or permission denied with the provided credentials when starting to transfer asset asset-name.
解決方法:請檢查您提供的 connector.authentication.usernameconnector.authentication.password 參數是否有效且可正常運作。
錯誤:NOT_FOUND. Invalid data source configuration provided when starting to transfer asset asset-name: APPLICATION_ERROR;google.cloud.bigquery.federationv1alpha1/ConnectorService.StartQuery;INVALID_ARGUMENT:Exception was thrown by the Connector implementation: Table table-name does not exist in asset asset-name.

解決方法:請確認資料表或檢視表名稱的拼寫正確無誤、參照的資料表或檢視表名稱存在,且同義字 (別名) 指向現有的資料表或檢視表。

如果資料表或檢視表存在,請確認已將正確的存取權限授予需要存取資料表的資料庫使用者。如果資料表或檢視表不存在,請建立資料表。

如果您嘗試存取其他結構定義中的資料表或檢視表,請確認系統參照的是正確的結構定義,且已授予存取物件的存取權。

如果提供資料表或檢視表名稱,請務必將其指定為 object_name;否則會顯示為空白。

錯誤:SERVICE_UNAVAILABLE. Timed out when starting to transfer asset asset-name. Ensure the datasource is reachable and the datasource configuration (Credentials, Network Attachment etc.) is correct.
錯誤:DEADLINE_EXCEEDED. Timed out when starting to transfer asset asset-name. Ensure the datasource is reachable and the datasource configuration (Credentials, Network Attachment etc.) is correct.

解決方法:請檢查所提供的資料庫詳細資料是否正確,並確認用於移轉設定的網路附件是否已正確設定。轉帳也可能未在期限內完成。

錯誤:INTERNAL

解決方法:其他因素導致轉移失敗。如需協助解決這個問題,請與 Cloud 客戶服務團隊聯絡

錯誤:INVALID_ARGUMENT. Connection to the host and port failed. Please check that the host, port, encryptionMode and network attachment are correct.

解決方法:請確認主機、通訊埠、加密模式和網路設定已正確設定。請確認網路連線,以及資料庫伺服器是否可供存取。如果 EncryptionMode 設為 FULL,請確認伺服器支援必要的通訊協定、具有有效憑證,且允許安全連線。如果 EncryptionMode 設為 DISABLE,請確認伺服器是否允許非 SSL 連線。檢查應用程式和資料庫記錄,找出與連線或 SSL/TLS 相關的錯誤。

Oracle 轉移問題

以下是建立 Oracle 移轉作業時可能遇到的常見問題。

錯誤:PERMISSION_DENIED. ORA-01017: invalid username/password; logon denied
解決方法:請確認提供的 Oracle 憑證是否有效。
錯誤:PERMISSION_DENIED. ORA-01045: user lacks CREATE SESSION privilege; logon denied
解決方法:CREATE SESSION 系統權限授予 Oracle 使用者。如要進一步瞭解如何授予 Oracle 權限,請參閱 GRANT
錯誤:SERVICE_UNAVAILABLE. ORA-12541: Cannot connect. No listener at host HOSTNAME port PORTSERVICE_UNAVAILABLE. Connection failed: IO Error. The Network Adapter could not establish the connection
解決方法:請確認提供的主機名稱和通訊埠詳細資料是否正確,且網路附件是否正確設定。
錯誤:NOT_FOUND. ORA-00942: table or view does not exist

解決方法:請檢查下列各項:

  • 資料表或檢視表名稱的拼寫正確。
  • 已存在參照的資料表或檢視表名稱。
  • 同義字會指向現有的資料表或檢視表。如果資料表或檢視表確實存在,請務必為需要存取資料表的資料庫使用者授予正確的存取權限。否則請建立資料表。
  • 如果您嘗試存取其他結構定義中的資料表或檢視畫面,請確認您參照的是正確的結構定義,且已授予存取該物件的權限。
錯誤:NOT_FOUND. Schema schema does not exist.
解決方法:指定的結構定義不存在。
錯誤:DEADLINE_EXCEEDED
解決方法:轉移作業未在六小時的期限內完成。將大型轉移作業拆分為多項較小的工作,以縮短轉移作業時間。
錯誤:INTERNAL
解決方法:其他原因導致轉移失敗。如需協助解決這個問題,請與 Cloud 客戶服務團隊聯絡
錯誤:INVALID_ARGUMENT
解決方法:移轉設定中提供的值無效,導致移轉失敗。如要瞭解有效的移轉設定值,請參閱「設定 Oracle 轉移作業」。
錯誤:SQL Error [1950] [42000]: ORA-01950: no privileges on tablespace 'TablespaceName'
解決方法:請將預設的資料表空間指派給使用者。詳情請參閱「指派預設的檔案區」一文。
錯誤:403 PERMISSION_DENIED. Required 'compute.subnetworks.use' permission for project

解決方法:如果網路附件位於與轉移設定不同的專案中,就可能發生這個錯誤。如要解決這個問題,您必須在網路附件所在的專案中,將下列權限授予服務帳戶 (例如 service-customer_project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com):

  • compute.networkAttachments.get
  • compute.networkAttachments.update
  • compute.subnetworks.use
  • compute.regionOperations.get

如果網路附件嘗試連線至位於不同專案中的虛擬私有雲 (VPC) (例如共用 VPC),也會發生這個錯誤。在這種情況下,您必須將共用 VPC 主機專案的 compute.subnetworks.use 權限授予服務帳戶 (例如 service-customer_project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com)。

PostgreSQL 轉移問題

以下是建立 PostgreSQL 移轉作業時可能遇到的常見問題。

錯誤:PERMISSION_DENIED. Failed to authenticate or permission denied with the provided credentials when starting to transfer asset asset-name.
解決方法:請檢查您提供的 connector.authentication.usernameconnector.authentication.password 參數是否有效且可正常運作。
錯誤:NOT_FOUND. Invalid data source configuration provided when starting to transfer asset asset-name: APPLICATION_ERROR;google.cloud.bigquery.federationv1alpha1/ConnectorService.StartQuery;INVALID_ARGUMENT:Exception was thrown by the Connector implementation: Table table-name does not exist in asset asset-name.

解決方法:請確認資料表或檢視表名稱的拼寫正確無誤、參照的資料表或檢視表名稱存在,且同義字 (別名) 指向現有的資料表或檢視表。

如果資料表或檢視表存在,請確認已將正確的存取權限授予需要存取資料表的資料庫使用者。如果資料表或檢視表不存在,請建立資料表。

如果您嘗試存取其他結構定義中的資料表或檢視表,請確認系統參照的是正確的結構定義,且已授予存取物件的存取權。

如果提供資料表或檢視表名稱,請務必將其指定為 object_name;否則會顯示為空白。

錯誤:SERVICE_UNAVAILABLE. Timed out when starting to transfer asset asset-name. Ensure the datasource is reachable and the datasource configuration (Credentials, Network Attachment etc.) is correct.
錯誤:DEADLINE_EXCEEDED. Timed out when starting to transfer asset asset-name. Ensure the datasource is reachable and the datasource configuration (Credentials, Network Attachment etc.) is correct.

解決方法:請檢查所提供的資料庫詳細資料是否正確,並確認用於移轉設定的網路附件是否已正確設定。轉帳也可能未在期限內完成。

錯誤:INTERNAL

解決方法:其他因素導致轉移失敗。如需協助解決這個問題,請與 Cloud 客戶服務團隊聯絡

錯誤:INVALID_ARGUMENT. Connection to the host and port failed. Please check that the host, port, encryptionMode and network attachment are correct.

解決方法:請確認主機、通訊埠、加密模式和網路設定已正確設定。請確認網路連線,以及資料庫伺服器是否可供存取。如果 EncryptionMode 設為 FULL,請確認伺服器支援必要的通訊協定、具有有效憑證,且允許安全連線。如果 EncryptionMode 設為 DISABLE,請確認伺服器是否允許非 SSL 連線。檢查應用程式和資料庫記錄,找出與連線或 SSL/TLS 相關的錯誤。

Salesforce 轉移問題

以下是建立 Salesforce 移轉作業時的常見錯誤。

錯誤:Permission Denied: invalid_client. invalid client credentials
解決方法:請確認提供的 ClientSecret 是否有效。
錯誤:Permission Denied: invalid_client. client identifier invalid
解決方法:請確認提供的 ClientId 是否有效。
錯誤:Permission Denied: Error encountered while establishing connection
解決方法:請檢查您提供的 Salesforce MyDomain 名稱是否正確。
錯誤:NOT_FOUND. asset type asset_name is not supported. If you are attempting to use a custom object, be sure to append the "__c" after the entity name. Please reference your WSDL or use the describe call for the appropriate names.
解決方法:請按照錯誤代碼中的指示操作,並確認提供的資產名稱是否正確。
錯誤:SERVICE_UNAVAILABLE
解決方法:服務暫時無法處理要求。請稍候片刻,然後再嘗試執行操作。
錯誤:DEADLINE_EXCEEDED
解決方法:轉移作業未在六小時的期限內完成。將大型轉移作業拆分為多個較小的轉移作業,盡可能縮短轉移作業時間。
錯誤:Failed to create recordReader to read partition : Batch failed. BatchId='batch_id', Reason='FeatureNotEnabled : Binary field not supported'
解決方法:連接器不支援含有二進位欄位的 sObject 資料結構。從轉移作業中移除含有二進位欄位的 sObject 資料結構。詳情請參閱 Salesforce 說明文件中的「匯出相關物件時,收到錯誤訊息「批次失敗:FeatureNotEnabled:不支援二進位欄位」
錯誤:RESOURCE_EXHAUSTED: PrepareQuery failed : ExceededQuota : ApiBatchItems Limit exceeded
解決方法:如果您超過工作執行作業的每日 ApiBatchItems API 限制,系統就會顯示這個錯誤。Salesforce 有每日 API 限制,每 24 小時會重設。如要解決這項錯誤,建議您分割並排定轉移作業,以免超出每日批次 API 限制。你也可以與 Salesforce 支援團隊聯絡,要求提高每日上限。
錯誤:Permission Denied: invalid_grant. no client credentials user enabled
解決方法:請確認 Salesforce 連結應用程式的「Client Credentials Flow」部分中的「Run as」欄位包含正確的使用者名稱。詳情請參閱「建立 Salesforce 連結應用程式」一文。
錯誤:FAILED_PRECONDITION: BatchId='batch-id', Reason='InvalidBatch : Failed to process query: OPERATION_TOO_LARGE: exceeded 100000 distinct ids'
解決方法:請確認使用者設定檔不會對擷取的 sObject 施加查詢限制。如果問題仍未解決,請使用具備系統管理員權限的 Salesforce 使用者認證,完成擷取作業。
錯誤:FAILED_PRECONDITION: Batch failed. BatchId='batch-id', Reason='InvalidBatch : Failed to process query: TXN_SECURITY_NO_ACCESS: The operation you requested isn't allowed due to a security policy in your organization. Contact your administrator for more information about security policies.
解決方法:請確認使用者的設定檔或權限集合包含所需的物件和欄位層級權限,以便擷取 sObject。請與管理員聯絡,要求對方更新這些權限,或是指派具有必要存取權的角色。

Teradata 轉移問題

以下是建立 Teradata 移轉作業時可能遇到的常見問題。

錯誤:Skipping extraction since table does not have change tracking column.

解決方法:如果您嘗試使用現有的隨選轉移設定,在已遷移的表格上執行 Teradata 轉移作業,可能會看到上述訊息。如果您想在已遷移的資料表上開始新的轉移作業,請建立新的轉移設定,並套用隨選設定。

當您使用按需移轉設定重複移轉作業時,BigQuery 資料移轉服務會嘗試以增量移轉方式執行,但由於移轉設定未套用正確的增量設定,因此會略過該資料表。如要進一步瞭解各種轉移類型,請參閱「按需或漸進式轉移」。

問題:轉移 CHAR(N) 資料類型時,會為較短的字串加上最多 N 個字元的空格。

解決方法:CHAR 資料轉換為 VARCHAR,並移除來源中的多餘空格。這個問題是因為 CHAR 是固定長度的字串,而 VARCHAR 應用於可變長度的字串。您也可以在遷移完成後,使用 RTRIM 函式移除 BigQuery 中的空格。使用 RTRIM 函式的查詢類似於以下範例:

UPDATE migrated_table
SET migrated_char_column = RTRIM(migrated_char_column)
WHERE true;

YouTube 移轉問題

以下是建立 YouTube 移轉作業時的常見錯誤。

錯誤:Import failed - no data was available for import. Please verify that data existence was expected.
錯誤:No data available for requested date. Please try an earlier run date or verify that data existence was expected.

解決方法:如果您之前未曾建立過 YouTube 報表工作,請允許 YouTube 至少有 2 天的緩衝時間,讓 BigQuery 資料移轉服務可以代表您產生報表。你不必採取其他行動。 轉移作業在前 2 天會失敗,但在第 3 天應該會成功。如果您之前建立過 YouTube 報告工作,請確認建立移轉作業的使用者具備報告的讀取權。

另請確認是否使用正確的帳戶設定移轉作業。您也必須在 OAuth 對話方塊中選取要載入資料的管道。

錯誤:No reports for reporting job with name name.

解決方法:這並不是錯誤。這是一則警告訊息,表示系統找不到指定報告的資料。您可以忽略這則警告。未來的移轉作業仍會繼續執行。

問題:移轉作業建立的結果資料表不完整,或結果不如預期。
解決方法:如果您有多個帳戶,則必須在接收 YouTube 權限對話方塊時選擇正確的帳戶。
問題:YouTube 分析和 BigQuery YouTube 轉移資料不相符。

背景資訊:BigQuery YouTube 轉移作業會使用 YouTube Reporting API,將資料直接擷取至 BigQuery 資料集。另一方面,YouTube 數據分析資訊主頁會使用 YouTube Analytics API 擷取資料。YouTube 在產生的報表 API 中產生的數字應視為最終數字,而 YouTube 數據分析資訊主頁/API 中顯示的數字則應視為預估數字。這兩個 API 之間可能會有一定程度的差異。

解決方法:如果報表中的數字確實不正確,YouTube 系統和 BigQuery 資料移轉服務的 YouTube 轉移作業都會設定為回補缺少的數字,並在回補的日期產生新報表時提供這些數字。由於 BigQuery 資料移轉服務的 YouTube 設定會載入 YouTube Reporting API 建立的所有可用報表,因此當 BigQuery 移轉服務自動匯入日後產生的 YouTube 報表時,也會納入新產生和更新的資料,並將資料擷取至正確的日期區隔表。

YouTube 權限問題

如要移轉 YouTube 內容管理工具報表,設定移轉作業的使用者必須具備 CMS user 權限 (至少)。CMS user 權限必須授予您要建立轉移作業的每位內容管理員。

配額問題

錯誤:Quota exceeded: Your project exceeded quota for imports per project.
解決方法:請確認您在專案中未排定過多轉移作業。如要計算移轉作業啟動的載入工作數,請參閱「配額與限制」一文。