插入文件的位置在哪里?

时间:2014-01-19 09:58:39

标签: mongodb

我做了以下尝试,使用benchrun插入文档:

> use benchmark
switched to db benchmark
> db.createCollection("bench")
{ "ok" : 1 }
> ops = [{op: "insert", ns: "db.bench", safe: false, doc: {"a": 1}}]
.....
> benchRun({parallel: 8, seconds: 10, ops: ops})
{
    "note" : "values per second",
    "errCount" : NumberLong(0),
    "trapped" : "error: not implemented",
    "insertLatencyAverageMicros" : 4.349606891531182,
    "insert" : 41210,
    "query" : 0,
    "update" : 0,
    "delete" : 0,
    "getmore" : 0,
    "command" : 413
}
> db.bench.find()
> 

Benchrun没有报告任何错误,但到最后,该系列中没有找到任何文件。

他们去哪儿了?

1 个答案:

答案 0 :(得分:0)

ops变量中,您将命名空间指定为ns: "db.bench"。这将插入名为db的数据库和名为bench的集合。

您应该能够找到插入的记录:

db.getSiblingDB('db').bench.find()

要输出到您期望的集合,您的命名空间应为“benchmark.bench”:

ops = [{op: "insert", ns: "benchmark.bench", safe: false, doc: {"a": 1}}]

此外,没有必要在createCollection()之前运行benchRun()。如果该集合不存在,则将创建该集合。根据您要观察的内容,您可能希望在调用benchmark之前删除bench数据库或benchRun()集合。