通过返回的index位置去检索具体的文檔(stage有数个模式将在后文中进行详解)。 这主要是直接定位到mongodb的chunck中去查找数据加快数据读取。 queryPlanner.rejectedPlans:其他执行计划(非最优而被查询优化器reject的)的详细返回其中具体信息与 winningPlan的返回中意义相同,故不在此赘述
最为直观explain返回值是executionTimeMillis值,指的是我们这条语句的执行时间这个值當然是希望越少越好。 该query的整体查询时间 该查询扫描2001行index所用时间。 第二层index与document扫描数与查询返回条目数 索引扫描条目、文档扫描条目。 這些都是直观地影响到executionTimeMillis我们需要扫描的越少速度越快。
对于一个查询我们最理想的状态是: 第三层,stage状态分析 SORT:表明在内存中进行了排序 TEXT:使用全文索引进行查询时候的stage返回 对于普通查询我希望看到stage的组合(查询的时候尽可能用上索引): 不希望看到包含如下的stage: "stage" : "SK",
#最优执荇计划的stage,这里返回是FETCH可以理解为通过返回的index位置去检索具体的文档(stage有数个模式,将在后文中进行详解) "rejectedPlans" : [ #其他执行计划(非最优而被查询优化器reject的)的详细返回,其中具体信息与winningPlan的返回中意义相同故不在此赘述
}