【问题标题】:Best way of reading in a Mongo output as JSON without manual preprocessing以 JSON 格式读取 Mongo 输出的最佳方式,无需手动预处理
【发布时间】:2022-02-11 05:59:08
【问题描述】:

MongoDB 按原样输出一个文档数组,只需在一个文档后粘贴一个文档,这意味着我最终得到一个 JSON 数组,该数组缺少包装括号以及对象之间的逗号。通常,我手动预处理这些输出文件以使它们成为有效的 JSON。但是,我当前的输出超过 500MB,这意味着我无法在 Notepad++ 中打开它。

加载和处理如此庞大的文档最聪明的方法是什么?即使我设法使它成为有效的 JSON,我是否可以以某种方式逐个对象“流式传输”它,这样我就不会占用半个内存?有图书馆吗?

谢谢

【问题讨论】:

  • json library 可能对您有所帮助。我认为这个问题需要minimal reproducible example,因为当您说“MongoDB 按原样输出文档数组”时,这是在哪里?这是在 Python 中吗?如果是这样,这个函数是什么,给出这个输出的代码是什么?如果没有,您知道pymongo 吗?您可以使用minimal reproducible exampleedit 问题,以便更容易回答。
  • @Kraigolas 不在 Python 中-仅使用 mongo shell,我得到了指定格式的文件。或者更确切地说,我什至不是生成文件的人;一位有权访问数据库的同事为我生成了它。我个人无权访问数据库,只能使用给我的数据。
  • @Kraigolas 我已经在使用您链接的库,但是我认为没有设置可以使其轻松地以指定格式的 JSON 读取? (即,而不是“[{...},{...}]”我有“{...}{...}”)
  • mongo shell 是一个管理工具。您是否尝试过使用 mongoexport 将数据输出为 JSON?

标签: python node.js json mongodb


【解决方案1】:

Notepad++ 无法打开大文件,使用 textpadultraedit ,vim 其他能够打开大文件(这些编辑器使用窗口技​​巧,因此它们不会占用您所有的 OS RAM 进行编辑或查看.. .)

【讨论】:

    猜你喜欢
    • 2018-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-04
    • 2017-03-08
    • 2022-01-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多