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, 返回指定数据库中索引所占空间的大小
相关推荐
qq_192779873 小时前
高级爬虫技巧:处理JavaScript渲染(Selenium)
jvm·数据库·python
u0109272714 小时前
使用Plotly创建交互式图表
jvm·数据库·python
爱学习的阿磊4 小时前
Python GUI开发:Tkinter入门教程
jvm·数据库·python
tudficdew5 小时前
实战:用Python分析某电商销售数据
jvm·数据库·python
sjjhd6525 小时前
Python日志记录(Logging)最佳实践
jvm·数据库·python
Configure-Handler5 小时前
buildroot System configuration
java·服务器·数据库
2301_821369615 小时前
用Python生成艺术:分形与算法绘图
jvm·数据库·python
电商API_180079052476 小时前
第三方淘宝商品详情 API 全维度调用指南:从技术对接到生产落地
java·大数据·前端·数据库·人工智能·网络爬虫
2401_832131956 小时前
Python单元测试(unittest)实战指南
jvm·数据库·python
打工的小王7 小时前
redis(四)搭建哨兵模式:一主二从三哨兵
数据库·redis·缓存