Google bigquery 将AVRO文件加载到BigQuery时出错

Google bigquery 将AVRO文件加载到BigQuery时出错,google-bigquery,google-cloud-storage,avro,Google Bigquery,Google Cloud Storage,Avro,我已经使用bq CLI实用程序成功地加载了大量存储在Google存储上的AVRO文件(将相同模式类型的文件加载到相同的表中) 然而,对于一些AVRO文件,我在加载到bigquery时遇到了一个非常神秘的错误,错误是: Apache Avro库无法读取数据,错误如下:EOF 已到达(错误代码:无效) avro工具验证avro文件未损坏后,报告输出: java-jar avro-tools-1.8.1.jar修复-o报告2017-05-15-07-15-01_48a99.avro 恢复文件:2017

我已经使用bq CLI实用程序成功地加载了大量存储在Google存储上的AVRO文件(将相同模式类型的文件加载到相同的表中)

然而,对于一些AVRO文件,我在加载到bigquery时遇到了一个非常神秘的错误,错误是:

Apache Avro库无法读取数据,错误如下:EOF 已到达(错误代码:无效)

avro工具验证avro文件未损坏后,报告输出:

java-jar avro-tools-1.8.1.jar修复-o报告2017-05-15-07-15-01_48a99.avro 恢复文件:2017-05-15-07-15-01_48a99.avro 文件摘要: 块数:51损坏块数:0 记录数:58598损坏记录数:0

我尝试用一个失败的文件创建一个全新的表,以防它是由于模式不匹配造成的,但这没有帮助,因为错误完全相同


需要帮助来找出可能导致此错误的原因吗?

如果没有更多信息,无法查明问题所在,但我遇到了此错误消息并提交了一张罚单

I单个加载作业中的许多文件缺少列,这是导致错误的原因

来自媒体的解释

BigQuery使用目录中按字母顺序排列的最后一个文件作为avro模式来读取其他avro文件。我怀疑问题在于最后一个文件和“有问题”文件之间的模式不兼容。您知道所有文件的架构是否完全相同或不同吗?您可以尝试帮助验证这一点,将目录中按字母顺序排列的最后一个文件和“有问题”的文件复制到另一个文件夹中,并尝试在一个BigQuery加载作业中加载这两个文件,然后查看错误是否重现


如果没有更多信息,就无法查明问题所在,但我遇到了这条错误消息,并提交了一张罚单

I单个加载作业中的许多文件缺少列,这是导致错误的原因

来自媒体的解释

BigQuery使用目录中按字母顺序排列的最后一个文件作为avro模式来读取其他avro文件。我怀疑问题在于最后一个文件和“有问题”文件之间的模式不兼容。您知道所有文件的架构是否完全相同或不同吗?您可以尝试帮助验证这一点,将目录中按字母顺序排列的最后一个文件和“有问题”的文件复制到另一个文件夹中,并尝试在一个BigQuery加载作业中加载这两个文件,然后查看错误是否重现

假设不包含任何敏感数据,您可以使用重现问题的示例文件吗?这将有助于BigQuery团队调试正在发生的事情,因为这听起来像是一个bug。假设不包含任何敏感数据,您可以使用重现问题的示例文件吗?这将有助于BigQuery团队调试正在发生的事情,因为这听起来像一个bug。