2017-06-08 30 views
1

我已使用bq CLI实用工具将大量AVRO文件(具有相同架构类型的相同表格)加载到Google存储中。将AVRO文件加载到BigQuery时出错

然而,对于一些AVRO文件而载入BigQuery我变得非常神秘的错误,该错误表示:

阿帕奇的Avro库未能读取与follwing错误数据:EOF 达到(错误代码:无效)

采用验证过的Avro工具的AVRO文件没有损坏,报表输出:

Java的罐子Avro的工具-1.8.1.jar修复-o报告2017-05-15-07 -15-01_48a99.avro 恢复文件:2017-05-15-07-15-01_48a99.avro 文件摘要: 块数:0 多项纪录:58598腐败记录数:0

我试过的情况下,创造一个全新的表与失败的文件之一,这是由于51损坏的块数模式不匹配,但没有帮助,因为错误是完全一样的。

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

+0

你能[提交一个bug问题跟踪](https://issuetracker.google.com/issues/new?component=187149&template=0)与重现问题的示例文件,假设它不不包含任何敏感数据?这将有助于BigQuery团队调试正在发生的事情,因为这听起来像是一个错误。 –

回答

0

没有更多信息没有办法找到问题,但我碰到了这个错误信息并提交了一张票here

我在单个加载作业中的许多文件丢失了导致错误的列。

来自ticket的说明。

BigQuery uses the alphabetically last file from the directory as the avro schema to read the other Avro files. I suspect the issue is with schema incompatibility between the last file and the "problematic" file. Do you know if all the files have the exact same schema or differ? One thing you could try to help verify this is to copy the alphabetically last file of the directory and the "problematic" file to a different folder and try to load those two files in one BigQuery load job and see if the error reproduces.