gpt4 book ai didi

json - BigQuery json 导出使用什么格式?

转载 作者:行者123 更新时间:2023-12-01 00:20:22 29 4
gpt4 key购买 nike

我试图从 Google 的 json 导出加载数据,但它看起来不是有效的 JSON (ECMA-404)、(RFC 7159)、(RFC 4627)。这是我对 json 换行符的期望:

[{},{},{}]

但这是它所提供的:
{}{}{}

以下是在四行查询结果上单击“下载为 JSON”按钮的示例输出:
{"c0":"001U0000016lf5jIAA","c1":"Tim Burton's Corpse Bride","c2":"a0KU000000OkQ8IMAV","c3":"Luxembourg","c4":"German","c5":"Sub & Audio","c21":null,"c22":"2025542.0"}
{"c0":"001U0000016lf5jIAA","c1":"Tim Burton's Corpse Bride","c2":"a0KU000000OkQ8IMAV","c3":"Luxembourg","c4":"German","c5":"Sub & Audio","c21":null,"c22":"2025542.0"}
{"c0":"001U0000016lf5jIAA","c1":"Tim Burton's Corpse Bride","c2":"a0KU000000OjUuEMAV","c3":"Luxembourg","c4":"French - Parisian","c5":"Sub & Audio","c21":null,"c22":"2025542.0"}
{"c0":"001U0000016lf5jIAA","c1":"Tim Burton's Corpse Bride","c2":"a0KU000000OkQ8IMAV","c3":"Luxembourg","c4":"German","c5":"Sub & Audio","c21":null,"c22":"2025542.0"}

BigQuery 对 json 使用这种导出格式是否有原因?是否有其他谷歌服务或依赖于这种格式的东西,或者为什么它会推送一个非标准的 json 格式? (也许我只是误解了 json 行格式)。请注意,这是来自 Web-UI,而不是提供有效 json 的 API。

最佳答案

BigQuery 读取和输出换行符分隔的 JSON - 这是因为传统的 JSON 不能很好地适应大数据的需求。

看:

  • http://specs.okfnlabs.org/ndjson/
  • https://en.wikipedia.org/wiki/JSON_streaming#Line-delimited_JSON

  • 问题中显示的“下载为 JSON”的输出与 BigQuery 可以读取的 JSON 输入兼容。

    请注意,Web UI 还提供将查询结果视为 JSON 的功能 - 这些结果被格式化为传统的 JSON 对象。我不确定这里有这个不兼容的输出的设计决定是什么 - 但这种形式的结果将无法导入回 BigQuery。

    所以一般来说,这种格式与 BigQuery 不兼容:

    enter image description here

    虽然这与 BigQuery 兼容:

    enter image description here

    为什么这种不那么传统的 JSON 格式是大数据世界的最佳选择?在 [...] 内封装一万亿行定义了一个具有一万亿行的对象——这很难解析和处理。新行分隔的 JSON 解决了​​这个问题,每一行都是一个独立的对象。

    关于json - BigQuery json 导出使用什么格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49141784/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com