如何在加载到 Bigquery 时修复“未找到:文件 /bigstore/project/testing/filename.json”错误

Posted

技术标签:

【中文标题】如何在加载到 Bigquery 时修复“未找到:文件 /bigstore/project/testing/filename.json”错误【英文标题】:How to fix 'Not found: Files /bigstore/project/testing/filename.json' error when loading into Bigquery 【发布时间】:2019-06-10 15:33:51 【问题描述】:

我正在尝试使用以下命令 bq load --source_format=NEWLINE_DELIMITED_JSON --replace=true kx-test.store_requests gs://kx-gam-test/store/requests/* 将多个 json (4000) 文件加载到 Bigquery 中的表中,但出现以下错误:

Error encountered during job execution:
Not found: Files /bigstore/kx-gam-test/store/requests/7fb27d63-5581-43a1-821d-fcf47b3412fd.json.gz
Failure details:
 - Not found: Files /bigstore/kx-gam-test/store/requests/93b54246-2284-4b85-8620-76657f4a338b.json.gz
 - Not found: Files /bigstore/kx-gam-test/store/requests/fd24a53d-2c49-4f66-bf54-a7ccf14a1cfe.json.gz
 - Not found: Files /bigstore/kx-gam-test/store/requests/35a27032-930c-456a-846d-67481a21e52d.json.gz

我不确定它为什么不工作,可能是因为我尝试加载的文件数量过多吗?我的 GCS 存储桶前面的 bigstore 文件夹是什么?

我想强调文件夹结构是这样的,kx-gam-test/store/requests 中有一些文件夹,我想在所有这些文件夹中加载 json gzip 文件。

【问题讨论】:

【参考方案1】:

根据documentation:

BigQuery 不支持在初始双斜杠之后包含多个连续斜杠的源 URI。

此外,here 是在将数据加载到云存储时需要考虑的一些附加信息。

【讨论】:

【参考方案2】:

您可以检查的几件事:

    确保您拥有必要的permissions

    确保文件确实存在于 GCS 中

    您是否有任何进程在加载后删除文件?检查audit logs 是否有任何痕迹,该文件是否在 BQ 实际读取/加载文件时已被删除。

【讨论】:

嗨@Christopher,感谢您的建议,但它没有链接到文件权限,并且这些文件确实存在于 GCS 中。最后,我将其缩小到“gs://kx-gam-test/store/requests/”文件夹中的某些文件的 uri 中出现双斜杠的问题,因为删除这些文件解决了这个问题。跨度>

以上是关于如何在加载到 Bigquery 时修复“未找到:文件 /bigstore/project/testing/filename.json”错误的主要内容,如果未能解决你的问题,请参考以下文章

使用 Pandas 附加 BigQuery 表时如何修复无效架构

使用 Google Cloud Datalab 时如何将 .gz 文件加载到 BigQuery?

如何在 BigQuery UI 中安排查询时修复“请求包含无效参数”错误

使用 Ruby 将数据加载到 BigQuery 时如何跳过前导行?

使用 Python 将 Google Cloud Storage 中的数据加载到 BigQuery 时,如何强制忽略双引号?

如何使用python修复在bigquery中上传csv文件