BigQuery google.cloud.exceptions.ServiceUnavailable 503

Posted

技术标签:

【中文标题】BigQuery google.cloud.exceptions.ServiceUnavailable 503【英文标题】: 【发布时间】:2018-02-07 10:28:22 【问题描述】:

在使用 BigQuery API 时,我们有时会收到来自 Google 的错误

文件“../.venv/lib/python3.4/site-packages/google/cloud/bigquery/dataset.py”,第 452 行,存在 query_params='fields': 'id')

文件“../.venv/lib/python3.4/site-packages/google/cloud/_http.py”,第 293 行,在 api_request 引发 exceptions.from_http_response(response) google.cloud.exceptions.ServiceUnavailable: 503 GET https://www.googleapis.com/bigquery/v2/projects//datasets/?fields=id: 执行过程中遇到错误。重试可能会解决问题。

由python代码引起

   destination_dataset.exists()

我们的系统:

Python 3.4 google-cloud-bigquery==0.26.0 google-cloud==0.27.0

上次发生此错误的时间:

6.02.18 欧洲中部时间晚上 10:31 4.02.18 上午 6:30 CET 25.01.19 晚上 8:50 CET 25.01.19 晚上 10:34 CET

任何想法为什么会发生以及我们如何避免此错误?

【问题讨论】:

您无法避免此类错误。 BigQuery 的 SLA(以及大多数其他公共云提供商服务)大约是 99.99%。这不是 100%。您需要使用诸如指数退避和重试之类的策略来解决代码中的这些类型的错误/问题,例如cloud.google.com/storage/docs/exponential-backoff (GCS) 【参考方案1】:

在此处添加文档链接,以添加 Graham Polley 的出色评论。您可以阅读“将数据从本地数据源加载到 BigQuery”文档页面的“Truncated Exponential Backoff”和“Exponential Backoff”子章节。

【讨论】:

以上是关于BigQuery google.cloud.exceptions.ServiceUnavailable 503的主要内容,如果未能解决你的问题,请参考以下文章

数据处理 - BigQuery 与 Data Proc+BigQuery

BigQuery:写入查询结果时使用 bigquery 作业的意外行为

Google BigQuery - 将数据流式传输到 BigQuery

Python BigQuery 脚本 bigquery.jobs.create 错误

阻止用户删除 BigQuery 表

Bigquery:在 Bigquery 中计算余额或重写 SQL 脚本