MongoDB查询分析常用函数explain()
2017-09-10 21:42
381 查看
MongoDB 查询分析可以确保我们建议的索引是否有效,是查询语句性能分析的重要工具
explain 操作提供了查询信息,使用索引及查询统计等。有利于我们对索引的优化。
aggregate(), count() ,distinct(),find(),group(), remove(),update() 等
接下来我们在 user 集合中创建 一个age 的索引:
使用 db.user.find({age:26}).explain()操作,返回的结果如下:
需要注意的是,大部分资料会给出类似如下信息输出(下面并不是执行db.user.find({age:26}).explain()操作返回的信息):
这是应该MongoDB中的explain()方法在3.2版本之后进行了一些方法和支持的变动
explain 操作提供了查询信息,使用索引及查询统计等。有利于我们对索引的优化。
db.collection.explain()简介
支持下列操作返回查询计划aggregate(), count() ,distinct(),find(),group(), remove(),update() 等
执行计划中几类常见的操作描述 COLLSCAN 全表扫描 IXSCAN 索引扫描 FETCH 根据索引去检索文档 SHARD_MERGE 合并分片结果
接下来我们在 user 集合中创建 一个age 的索引:
使用 db.user.find({age:26}).explain()操作,返回的结果如下:
db.user.find({age:26}).explain() { "queryPlanner" : { "plannerVersion" : 1, //查询计划版本 "namespace" : "demo.user", //被查询对象 "indexFilterSet" : false, //是否使用到了索引来过滤 "parsedQuery" : { //解析查询,即过滤条件是什么 "age" : { "$eq" : 26 //此处为age=26 } }, "winningPlan" : { //最佳的执行计划 "stage" : "FETCH", "inputStage" : { "stage" : "IXSCAN", "keyPattern" : { "age" : 1 }, "indexName" : "age_1", "isMultiKey" : false, "multiKeyPaths" : { "age" : [ ] }, "isUnique" : false, "isSparse" : false, "isPartial" : false, "indexVersion" : 2, "direction" : "forward", "indexBounds" : { "age" : [ "[26.0, 26.0]" ] } } }, "rejectedPlans" : [ ] //拒绝的执行计划,此处没有 }, "serverInfo" : { //服务器信息,包括主机名,端口,版本等。 "host" : "DESKTOP-4921JJC", "port" : 27017, "version" : "3.4.7", "gitVersion" : " 989b cf38c1b8a0a8dca4a11737581beafef4fe120bcd" }, "ok" : 1 }
需要注意的是,大部分资料会给出类似如下信息输出(下面并不是执行db.user.find({age:26}).explain()操作返回的信息):
这是应该MongoDB中的explain()方法在3.2版本之后进行了一些方法和支持的变动
老版本、大部分资料:db.collection.method().explain() 当前的API:db.collection.explain().method()
相关文章推荐
- mongodb .explain('executionStats') 查询性能分析(转)
- MongoDB:4-MongoDB的索引和查询分析(explain)
- mongodb查询计划(explain)分析
- C语言的常用库函数使用方法分析及用途(4)
- 几个常用的Oracle分析函数
- php常用字符串处理函数实例分析
- oracle常用分析函数
- oracle常用的分析函数
- 【Oracle】的子查询和常用函数详解
- Explain分析查询语句
- MongoDB实战-使用EXPLAIN分析慢查询
- jsp页面常用的查询及显示方法分析
- SQL常用查询语句及函数
- PHP常用文件操作函数和简单实例分析
- 关于mysql 简单的查询语句 以及常用函数的 总结
- mongodb源码分析(七)查询3之mongod的cursor的产生(续)
- MySQL索引,MySQL性能分析及explain的使用,分析SQL查询性能
- sql:常用sql查询工具五(explain 执行计划)
- 层次查询和分析函数(LAG、LEAD)在号段选取中的应用
- Ajax常用的几个函数及Alexa查询的几个查询接口及使用方法