BigQuery 加载作业失败 - 无法访问 GCS 文件
Posted
技术标签:
【中文标题】BigQuery 加载作业失败 - 无法访问 GCS 文件【英文标题】:BigQuery failed load job - was unable to access a GCS file 【发布时间】:2014-03-14 01:02:01 【问题描述】:我们昨天在 BigQuery 的一项计划加载作业中遇到了错误。我们以前从未见过这个错误。此外,不久之后重新运行该作业(没有任何更改)效果很好。因此,无法复制。
我们正在从 GCS 加载文件。这是 BigQuery/GCS 返回的错误:
访问被拒绝:Google 存储文件 [文件名已删除]:访问被拒绝
只有大约 50 个源 uri 中的一个文件无法访问。失败作业的作业id:
job_TFuRwMrEWVAMD-PNuc29Yx_PXkk
当天晚些时候重新运行的作业的作业 ID 再次正常运行(未进行任何更改):
job_Pt9usLRO9elxIBlmuOwCGB-drxI
有人知道为什么会这样吗?
【问题讨论】:
如果昨天有帮助,我们也看到了一些不寻常的活动,可能是部署错误或服务错误。 看起来 GCS 正在发挥作用。从此没见过。奇怪。 【参考方案1】:我在 BigQuery 导入工作人员中查找了作业日志……据我所知,当我们尝试获取某个 Cloud Storage 文件的文件大小时遇到了 ACCESS_DENIED 错误。您确定在运行第二个作业之前 ACL 没有更改吗?这可能是 Cloud Storage 中的一个临时故障。
【讨论】:
ACL 肯定没有改变。这些作业已经运行了几个月,没有任何问题。我同意它看起来像是 GCS 中的一个小故障,但我想我还是会标记它。我现在已经实现了一些错误处理,以防它再次发生。 您能分享一下您是如何捕获此类错误的吗? 在轮询作业的状态时,您可以检查它是否失败。错误结果包含在 JSON 响应中,因此您可以随心所欲地处理它 - 我们只是不断重试工作。 顺便说一句,你看到这些了吗:***.com/questions/22468181/… 是的,我看到了那个帖子。这实际上是我们团队中提出该问题的另一位开发人员。现在对我们来说已经成为一个真正的问题。我们每天都收到 503,这意味着我们的日常工作都失败了。以上是关于BigQuery 加载作业失败 - 无法访问 GCS 文件的主要内容,如果未能解决你的问题,请参考以下文章
在使用 BigQuery API 的 python 插入作业期间登录失败
文件:0:来自 Google BigQuery 加载作业的意外
将数据导入 Bigquery,但只能通过作业历史访问“表”,无法在数据集中查看
从 GCS 加载 Google BigQuery 失败并出现错误 Unsupported empty struct type for field