Mongodb 中,与索引相关的监控指标

Mongodb为集合添加索引,能够提高查询的效率,减少查询过程中检索文档的数量,改变文档检索的方式。 索引,采用集合中的一部分数据,构建了B tree,支持mongodb的高效检索。除$indexStats命令外,mongodb还记录下索引数量,索引占用存储空间等信息。能够帮助mongodb使用者完成数据库服务器与索引有关的日常监控和维护。

1. db.serverStatus()记录下的索引统计信息

复制代码
db.serverStatus()

db.serverStatus()返回数据库的全局监控信息,监控系统定期运行这个命令获取数据库运行实例的监控数据

    • metrics.operation.scanAndOrder 返回没有使用索引排序的查询排序总数量
    • metrics.queryExecutor.scanned 查询和生成执行计划时,索引使用的次数。这个数值与explain()中返回的totalKeysExamined数量相同

2. collStats()返回的集合层面的磁盘空间占用信息

复制代码
db.runCommand({
  collstats: <collectionName>
})

//返回订单表 orders的集合统计信息
db.runCommand({
  collstats: "orders"
})
    • totalIndexSize 指定集合中索引占用存储空间的大小,包括正在构建中索引的大小。如果数据库中存在构建中的索引,则包含构建中索引的大小。
    • indexSizes 指定集合中,每个索引所占存储空间的大小。包括正在构建中索引的大小。如果数据库中存在构建中的索引,则包含构建中索引的大小。

3. dbStats()记录的数据库级别索引统计信息.

dbStats()与serverStatus()查询mongodb中不同层次的监控信息。 serverStatus()返回数据库运行实例的监控信息。 技术人员使用mongodb shell登陆进入mongodb以后,可以通过show dbs命令查看数据库列表。 dbStats()命令返回的就是show dbs结果集中一个db的统计信息。

复制代码
db.runCommand({
  dbStats: 1
})
    • dbStats.indexes, 返回指定数据库中索引的数量
    • dbStats.indexSize, 返回指定数据库中索引所占空间的大小
相关推荐
humors22121 小时前
各厂商工具包网址
java·数据库·python·华为·sdk·苹果·工具包
Yushan Bai21 小时前
ORACLE数据库在进行DROP TABLE时失败报错ORA-00604问题的分析处理
数据库·oracle
77美式1 天前
Node + Express + MongoDB 后端部署全解析:新手零踩坑
数据库·mongodb·express
城数派1 天前
2000-2025年我国省市县三级逐8天日间地表温度数据(Shp/Excel格式)
数据库·arcgis·信息可视化·数据分析·excel
AC赳赳老秦1 天前
OpenClaw text-translate技能:多语言批量翻译,解决跨境工作沟通难题
大数据·运维·数据库·人工智能·python·deepseek·openclaw
AI应用实战 | RE1 天前
014、索引高级实战:当单一向量库不够用的时候
数据库·人工智能·langchain
ffqws_1 天前
Spring Boot入门:通过简单的注册功能串联Controller,Service,Mapper。(含有数据库建立,连接,及一些关键注解的讲解)
数据库·spring boot·后端
清水白石0081 天前
《Python 架构师的自动化哲学:从基础语法到企业级作业调度系统与 Airflow 止损实战》
数据库·python·自动化
阿华田5121 天前
MySQL性能优化大全
数据库·mysql·性能优化
kaico20181 天前
python操作数据库
开发语言·数据库·python