将JSON数据加载到大查询时出错:为记录字段指定的平坦值

时间:2013-06-21 01:34:43

标签: json google-bigquery

通过load命令将JSON记录加载到Big Query时,我们看到以下错误:

  

加载操作中的BigQuery错误:处理作业'job_d727bf8944884b20b709ded2887b7a13'时​​出错:为记录字段指定的平坦值   失败的细节:

     
      
  • 意外的。请再试一次。
  •   
  • 大于最大允许尺寸的行
  •   

有问题的记录似乎远低于JSON允许的最大大小,并且格式正确。该表的模式使用嵌套记录,但最近日志和模式的格式都没有更改,因此不清楚为什么会突然发生此错误。

更新

我们通常使用--max_bad_records参数运行加载操作,以便跳过可能存在的几个格式错误的记录。我尝试重新加载您指定的文件是单独的失败源​​,并且这次没有错误,无论是否定义了max_bad_records,它似乎都成功了。

bq load --max_bad_records 20 --source_format NEWLINE_DELIMITED_JSON telemetry_data_2013_06_20 "gs:/.../2013-06-12-01/ip-10-144-3-198.log"

以下是工作ID:

job_5822a36c5c364117a6651f3e8b81b49f
job_ed4080f9f60c485bb265c09367902f00

为什么这个文件这次成功?

1 个答案:

答案 0 :(得分:0)

根据我们可以访问的日志,看起来您的加载作业中只有“:”重复输入,没有任何其他数据。

BigQuery中可能存在一个问题,在某些情况下,将单个记录大小限制设置为2 MB而不是广告的16 MB。你能否确认抛出“大于最大允许大小的行”响应的行是否低于2Mb?