json - 将 JSON 数据加载到大查询中时出错 : flat value specified

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

BigQuery error in load operation: Error processing job 'job_d727bf8944884b20b709ded2887b7a13': flat value specified for record field Failure details:

  • Unexpected. Please try again.
  • Row larger than the maximum allowed size

有问题的记录似乎远低于 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

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

最佳答案

根据我们可以访问的日志,您的加载作业中似乎有一个简单的“:”重复条目,没有任何其他数据。

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

关于json - 将 JSON 数据加载到大查询中时出错 : flat value specified for record field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17226419/

相关文章:

c++-cli - 导出 C++/CLI native 类 (C4679)

ruby-on-rails - rails 和 Heroku : Running a script

database - 是否有任何工具可以从数据库模式的 json 表示自动生成 ERD 图?

linux - 为什么我得到数据大小大于 mss 的数据包?

android-layout - 在滑动选项卡中水平滚动 : android

nginx - 如何替换 HTTP 请求 URI 中的特殊字符?

macos - 运行 make 时如何修复 ranlib/libtool 错误

python - 从 Python 中的角度集生成多边形?

ajax - 我可以添加 Access-Control-Allow-Origin : * to th

python - Selenium:FirefoxProfile 异常无法加载配置文件