您当前的位置: 首页 >  小志的博客 mongodb

MongoDB——explain执行计划详解

小志的博客 发布时间:2022-05-05 23:06:44 ,浏览量:4

目录

    • 一、explain执行计划使用的前提条件
    • 二、explain执行计划的语法
    • 三、explain执行计划的示例
      • 3.1、数据准备
      • 3.2、执行explain执行计划指定queryPlanner参数
      • 3.3、执行explain执行计划指定executionStats参数
      • 3.4、执行explain执行计划指定allPlansExecution参数
      • 3.5、 stage状态
      • 3.6、执行计划的返回结果中尽量不要出现以下stage

一、explain执行计划使用的前提条件

  • 查询是否使用了索引
  • 索引是否减少了扫描的记录数量
  • 是否存在低效的内存排序

二、explain执行计划的语法

  • explain()方法的形式

    db.collection.find().explain()
    
  • verbose 可选参数
    表示执行计划的输出模式,默认queryPlanner

    模式名字描述
    queryPlanner执行计划的详细信息,包括查询计划、集合信息、查询条件、最佳执行计划、查询方式和 MongoDB 服务信息等
    exectionStats最佳执行计划的执行情况和被拒绝的计划等信息
    allPlansExecution选择并执行最佳执行计划,并返回最佳执行计划和其他执行计划的执行情况

三、explain执行计划的示例

3.1、数据准备

  • 准备数据集,执行脚本

    var tags = ["nosql","mongodb","document","developer","popular"];
    var types = ["technology","sociality","travel","novel","literature"];
    var books=[];
    for(var i=0;i            
关注
打赏
查看更多评论