博客
关于我
MongoDB 性能调优
阅读量:793 次
发布时间:2023-02-09

本文共 832 字,大约阅读时间需要 2 分钟。

一、执行计划

MongoDB 提供了一个 explain 命令,允许我们深入了解系统如何处理查询请求。通过使用 explain 命令,我们可以详细观察系统如何利用索引来加快查询速度,并基于这些信息进行索引的针对性优化。

以下是使用 explain 命令时的示例:

> db.t5.ensureIndex({name:1})> db.t5.ensureIndex({age:1})> db.t5.find({age:{$gt:45}}, {name:1}).explain(){    "cursor" : "BtreeCursor age_1",    "nscanned" : 0,    "nscannedObjects" : 0,    "n" : 0,    "millis" : 0,    "nYields" : 0,    "nChunkSkips" : 0,    "isMultiKey" : false,    "indexOnly" : false,    "indexBounds" : {        "age" : [            [45, 1.7976931348623157e+308]        ]    }}

字段说明:

  • cursor:表示使用了哪一种游标。
  • nscanned:表示索引扫描的总次数。
  • nscannedObjects:表示扫描过的文档总数。
  • n:表示执行查询的总次数。
  • millis:表示查询的总时间(单位:毫秒)。
  • nYields:表示在等待I/O操作期间,查询线程自旋的次数。
  • nChunkSkips:表示因为索引不足而跳过的块的数量。
  • isMultiKey:表示索引是否是多键索引。
  • indexOnly:表示查询是否只使用了索引。
  • indexBounds:表示查询的范围限制。

通过 explain 命令,我们可以清晰地了解 MongoDB 如何处理查询请求,从而有助于对索引的选择和优化。

转载地址:http://qcffk.baihongyu.com/

你可能感兴趣的文章
mongodb增删改查
查看>>
MVVM 模式
查看>>
MongoDB复制集/集群搭建详解
查看>>
MongoDB复制集底层原理
查看>>
MongoDB多文档事务详解
查看>>
MongoDB如何添加多数据源
查看>>
mongodb如何设置主键自增
查看>>
MongoDB存储引擎
查看>>
Mongodb学习总结(1)——常用NoSql数据库比较
查看>>
MVS配置相机IP\配置相机和本机的IP在同一个网段
查看>>
MongoDB学习笔记(8)--索引及优化索引
查看>>
MongoDB学习笔记(四)--索引 && 性能优化
查看>>
MongoDB安装及shell简介
查看>>
mongodb定时备份数据库
查看>>
mssql 字增自段怎样重置(重新自增)|清空表已有数据
查看>>
mongodb导出csv json
查看>>
MongoDB工具MagicMongoDBTool使用介绍(一) -- 简单MongoDB入门
查看>>
mongodb工具类
查看>>
MongoDB常见面试题总结(上)
查看>>
MongoDB常见面试题总结(下)
查看>>