【问题标题】:Load from GCS to GBQ causes an internal BigQuery error从 GCS 加载到 GBQ 会导致内部 BigQuery 错误
【发布时间】:2022-11-11 21:40:40
【问题描述】:

我的应用程序每天创建数千个“加载作业”,以将数据从 Google Cloud Storage URI 加载到 BigQuery,并且只有少数情况会导致错误:

“以错误结束。详细信息:发生内部错误,无法完成请求。这通常是由暂时性问题引起的。按照 BigQuery SLA 中的描述重试具有回退的作业应该可以解决问题:https://cloud.google.com/bigquery/sla。如果错误继续发生,请联系支持https://cloud.google.com/support。错误:7916072"

该应用程序使用 Python 编写并使用库:

google-cloud-storage==1.42.0
google-cloud-bigquery==2.24.1
google-api-python-client==2.37.0

加载作业是通过调用完成的

load_job = self._client.load_table_from_uri(
    source_uris=source_uri,
    destination=destination,
    job_config=job_config,
)

这个方法有一个默认参数:

retry: retries.Retry = DEFAULT_RETRY,

因此作业应自动重试此类错误。

以错误结束的特定作业的 ID:

"load_job_id": "6005ab89-9edf-4767-aaf1-6383af5e04b6"
"load_job_location": "US"

收到错误后,应用程序会重新创建作业,但没有帮助。

后续失败的作业 ID:

5f43a466-14aa-48cc-a103-0cfb4e0188a2
43dc3943-4caa-4352-aa40-190a2f97d48d
43084fcd-9642-4516-8718-29b844e226b1
f25ba358-7b9d-455b-b5e5-9a498ab204f7
...

【问题讨论】:

  • 你为什么执行这么多load jobs,你用wildcards吗?
  • @MazlumTosun 让客户拥有的许多服务帐户的数据保持最新。作业由一些业务事件触发。

标签: google-bigquery google-cloud-storage


【解决方案1】:

如报错信息中所述,按照BigQuery Service Level Agreement中描述的退避要求等待,然后重试操作。

如果错误继续发生,如果您有支持计划,请创建一个新的 GCP support case。否则,您可以在描述您的问题的issue tracker 上打开一个新问题。您也可以尝试使用Reservations 来降低此错误的频率。

有关错误消息的更多信息,您可以参考此document

【讨论】:

    猜你喜欢
    • 2016-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多