23

我是 mongodb 数据库的新手。ia 创建一个应用程序,其中数据存储为 json 文件。我想要做的是将该数据导入 mongodb,然后在命令提示符下显示它。我已经尝试过以下命令,但错误显示Failure parsing josn near: } 我的命令是:

mongoimport -d mydb -c mydb --type json --fileglossary.json --headerline

我将 json 文件放在 c:\mongodb\bin\glossary.json 中,谢谢。

{
"glossary": {
    "title": "example glossary",
    "GlossDiv": {
        "title": "S",
        "GlossList": {
            "GlossEntry": {
                "ID": "SGML",
                "SortAs": "SGML",
                "GlossTerm": "Standard Generalized Markup Language",
                "Acronym": "SGML",
                "Abbrev": "ISO 8879:1986",
                "GlossDef": {
                    "para": "A meta-markup language, used to create markup languages such as DocBook.",
                    "GlossSeeAlso": ["GML", "XML"]
                },
                "GlossSee": "markup"
            }
        }
    }
}
}
4

2 回答 2

28

您的 JSON 似乎只有一个对象。格式如{..},{..}预期。

所以,使用--jsonArray选项:

 mongoimport -d mydb -c mycollection --jsonArray < glossary.json

另一种选择是按照 mongodb 的预期格式化源文档。这将使加载速度更快。

于 2013-08-25T06:09:41.210 回答
6

如果您有大量收藏,--jsonArray则需要很长时间才能导入。我每秒收到大约 10 个文件。如果您有格式正确的.json文件,则可以--file改用。我现在每秒收到大约 6000 个文档。

还好我没有满足于第一个选项!

于 2015-02-01T13:10:07.173 回答