explain函数
1.explain函数解释器分析MongoDB命令执行情况
2.MongoDB提供db.collection.explain()方法,cursor.explain()方法和explain命令,以返回查询计划和查询计划执行统计信息
3.explain()返回结果是查询计划
4.格式为阶段树
5.每个阶段将其结果(即文档或索引键)传递给父节点
6.叶节点访问集合或索引
7.内部节点操作子节点的文档或索引键
8.根节点是MongoDB从中派生结果集的最后阶段
MongoDB查询计划竞赛
1.查询计划竞赛机制
2.MongoDB优化器为查询请求产生多个执行计划
3.并行执行所有的执行计划
4.保留执行最快的Query Plan查询计划,其他丢弃
5.缓存最优的执行计划
6.后期多次调用同一个查询使用缓存的查询计划
7.每次查询都会优先查找匹配的查询计划
8.没有执行重新生成的过程
9.查询计划可以更新,也可以删除PlanCache.clear()