从 Cloud Storage 加载 BigQuery InternalError(适用于直接文件上传)

BigQuery InternalError loading from Cloud Storage (works with direct file upload)

每当我尝试将存储在 CloudStorage 中的 CSV 文件加载到 BigQuery 中时,我都会收到一个内部错误(同时使用网络界面和命令行)。 CSV 是 Google Ngram 数据集的(缩写)部分。

命令如:

bq load 1grams.ngrams gs://otichybucket/import_test.csv word:STRING,year:INTEGER,freq:INTEGER,volume:INTEGER

给我:

BigQuery error in load operation: Error processing job 'otichyproject1:bqjob_r28187461b449065a_000001504e747a35_1': An internal error occurred and the request could not be completed.

但是,当我使用 Web 界面直接加载此文件并将文件上传作为源(从我的本地驱动器加载)时,它有效。

我需要从云存储加载,因为我需要加载更大的文件(原始 ngrams 数据集)。

我试过不同的文件,总是一样。

我是 BigQuery 团队的一名工程师。我可以查找您的工作,但似乎读取 Google Cloud Storage 对象时出现问题。

不幸的是,我们没有记录太多上下文,但查看代码,可能导致这种情况的原因是:

  1. 您为作业指定的 URI 格式不正确。它看起来没有畸形,但可能有一些我没有注意到的奇怪的 UTF8 非打印字符。

  2. 您的存储桶 'region' 有点出乎意料。您是否有可能将 GCS 存储桶上的数据位置设置为 {US、EU 或 ASIA} 以外的位置。有关存储桶位置的更多信息,请参阅 here。如果是这样,并且您已将位置设置为区域而不是大陆,则可能会导致此错误。

  3. 可能是 GCS 中的一些内部错误导致了这种情况。但是,我在任何日志中都没有看到这一点,而且这种情况应该很少见。

我们正在添加更多日志记录以在将来检测到这一点并解决区域存储桶的问题(但是,区域存储桶可能会失败,因为 bigquery 不支持跨区域数据移动,但至少他们将因可理解的错误而失败。