【问题标题】:how to do mongo export to json without type如何在没有类型的情况下将mongo导出到json
【发布时间】:2017-03-24 06:33:39
【问题描述】:

我的高级目的是将 mongo 数据导出到 Bigquery,以便进行数据分析。

我不想导出为 csv,因为这样做需要我手动指定要导出的字段。

但是,mongoexportjson 将有这些 type 类似的数据

"registerTimestamp":{"$numberLong":"1429594506335"}

这个 tpye $numberLong 真的搞砸了我的 bigquery 导入。错误信息如下:

错误: 查询:非法字段名:$numberLong

我找不到不带类型导出 mongo 的方法。如何解决这个导出到 bigquery 的问题....

【问题讨论】:

    标签: mongodb google-bigquery


    【解决方案1】:

    我认为你可以这样做:

    创建一个脚本调用 command.js,其中包含:

    printjson( db.collection.find().toArray() )
    

    然后执行如下命令:

    mongo dbname command.js > output.json
    

    This article is the source and will provide more details

    【讨论】:

      【解决方案2】:

      我最终导出 CSV 并从那里获取。

      【讨论】:

        【解决方案3】:

        我认为您可以使用 vim 打开 json 文件,然后使用如下正则表达式将类型替换为空字符串:

        1. 到 NumberLong(***),使用

        :%s/NumberLong((.*))/\1/g

        1. 到 ObjectId(***),使用

        :%s/NumberLong((.*))/\1/g

        【讨论】:

        • 似乎是同一个正则表达式的两倍。
        猜你喜欢
        • 1970-01-01
        • 2016-10-30
        • 2021-05-22
        • 2017-02-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-04
        • 2012-11-13
        相关资源
        最近更新 更多