了解蒙戈DB解释(Understanding mongo db explain)

2019-07-31 17:56发布

我开了查询,并试图解释它蒙戈控制台上,得到了

"isMultiKey" : true,
"n" : 8,
"nscannedObjects" : 17272,
"nscanned" : 17272,
"nscannedObjectsAllPlans" : 21836,
"nscannedAllPlans" : 21836,
"scanAndOrder" : true,
"indexOnly" : false,
"nYields" : 0,
"nChunkSkips" : 0,
"millis" : 184,

大部分的东西都在解释http://www.mongodb.org/display/DOCS/Explain ,但我不明白什么呢nscannedObjectsAllPlans,nscannedAllPlans手段。 任何人都可以帮忙吗?

谢谢

Answer 1:

nscannednscannedObjects报告为获奖计划的结果。

nscannedAllPlansnscannedObjectsAllPlans报告结果对所有计划

例如:

>t = db.jstests_explainb;
>t.drop();

>t.ensureIndex( { a:1, b:1 } );
>t.ensureIndex( { b:1, a:1 } );

>t.save( { a:0, b:1 } );
>t.save( { a:1, b:0 } );

>t.find( { a:{ $gte:0 }, b:{ $gte:0 } } ).explain( true );
{
  "cursor": "BtreeCursor a_1_b_1",
  "isMultiKey": false,
  "n": 2,
  "nscannedObjects": 2,
  "nscanned": 2,
  "nscannedObjectsAllPlans": 6,
  "nscannedAllPlans": 6,
  "scanAndOrder": false,
  "indexOnly": false,
  "nYields": 0,
  "nChunkSkips": 0,
  "millis": 2,
...
}


文章来源: Understanding mongo db explain