为了账号安全,请及时绑定邮箱和手机立即绑定

mongodb 3.0 中怎么显示cursor和nscanned?

mongodb 3.0 中怎么显示cursor和nscanned?

达令说 2019-04-10 20:48:07
如题这是我用explain显示出来的数据>db.users.explain("allPlansExecution").find({username:'user101'}){"queryPlanner":{"plannerVersion":1,"namespace":"test.users","indexFilterSet":false,"parsedQuery":{"username":{"$eq":"user101"}},"winningPlan":{"stage":"FETCH","inputStage":{"stage":"IXSCAN","keyPattern":{"username":1},"indexName":"username_1","isMultiKey":false,"direction":"forward","indexBounds":{"username":["[\"user101\",\"user101\"]"]}}},"rejectedPlans":[]},"executionStats":{"executionSuccess":true,"nReturned":1,"executionTimeMillis":0,"totalKeysExamined":1,"totalDocsExamined":1,"executionStages":{"stage":"FETCH","nReturned":1,"executionTimeMillisEstimate":0,"works":2,"advanced":1,"needTime":0,"needFetch":0,"saveState":0,"restoreState":0,"isEOF":1,"invalidates":0,"docsExamined":1,"alreadyHasObj":0,"inputStage":{"stage":"IXSCAN","nReturned":1,"executionTimeMillisEstimate":0,"works":2,"advanced":1,"needTime":0,"needFetch":0,"saveState":0,"restoreState":0,"isEOF":1,"invalidates":0,"keyPattern":{"username":1},"indexName":"username_1","isMultiKey":false,"direction":"forward","indexBounds":{"username":["[\"user101\",\"user101\"]"]},"keysExamined":1,"dupsTested":0,"dupsDropped":0,"seenInvalidated":0,"matchTested":0}},"allPlansExecution":[]},"serverInfo":{"host":"mongo2","port":27017,"version":"3.0.0","gitVersion":"a841fd6394365954886924a35076691b4d149168"},"ok":1}
查看完整描述

2 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

刚刚查了下文档,怪自己没仔细看结果。。
queryPlanner.winningPlan.inputStage.stage列显示查询策略
-IXSCAN表示使用Index查询
-COLLSCAN表示使用列查询,也就是一个一个对比过去
cursor中的索引名称移动到了queryPlanner.winningPlan.inputStage.indexName
3.0中使用executionStats.totalDocsExamined来显示总共需要检查的文档数,用以取而代之nscanned。
                            
查看完整回答
反对 回复 2019-04-10
?
SMILET

TA贡献1796条经验 获得超4个赞

>db.person.find({age:{$lt:20}}).explain("executionStats")
"executionStats":{
"executionSuccess":true,
"nReturned":20,
"executionTimeMillis":567,
"totalKeysExamined":0,
"totalDocsExamined":1000000,
"executionStages":{
"stage":"COLLSCAN",
"filter":{
"age":{
"$lt":20
}
},
"nReturned":20,
"executionTimeMillisEstimate":520,
"works":1000002,
"advanced":20,
"needTime":999981,
"needFetch":0,
"saveState":7812,
"restoreState":7812,
"isEOF":1,
"invalidates":0,
"direction":"forward",
"docsExamined":1000000
}
                            
查看完整回答
反对 回复 2019-04-10
  • 2 回答
  • 0 关注
  • 324 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信