小编Bar*_*ian的帖子

为什么 MongoDB 不同的查询计划显示不同的 nReturned 值?

faults我的MongoDB数据库中有一个集合,每个文档都有这些字段:rack_nametimestamp

为了测试和比较性能,我创建了这两个索引:

rack -> {'rack_name': 1}

time -> {'timestamp': 1}

现在我用explain()执行了以下查询:

db.faults.find({
    'rack_name': {
        $in: [ 'providence1', 'helena2' ]
    }, 
    'timestamp': {
        $gt: 1501548359000
    }
})
.explain('allPlansExecution') 
Run Code Online (Sandbox Code Playgroud)

结果如下:

 {
"queryPlanner" : {
    "plannerVersion" : 1,
    "namespace" : "quicktester_clone.faults",
    "indexFilterSet" : false,
    "parsedQuery" : {
        "$and" : [ 
            {
                "timestamp" : {
                    "$gt" : 1501548359000.0
                }
            }, 
            {
                "rack_name" : {
                    "$in" : [ 
                        "helena2", 
                        "providence1"
                    ]
                }
            }
        ]
    },
    "winningPlan" : { …
Run Code Online (Sandbox Code Playgroud)

indexing mongodb database-performance query-performance mongodb-query

2
推荐指数
1
解决办法
1280
查看次数