You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MongoDB explain是否展示磁盘与内存读取的文档数量及对应属性?

MongoDB Explain结果中磁盘与内存读取相关统计说明

MongoDB的explain结果(需指定executionStats或allPlansExecution模式)会提供与磁盘、内存读取相关的统计数据,但并非直接按「单个文档数量」统计,而是以MongoDB存储的基本单位——**数据页(page)**为统计维度。

针对你假设的场景:查询扫描100万条记录并返回其中1000条,explain不会直接显示这100万条扫描记录或1000条返回文档中从SSD/HDD读取的具体条数,但能通过页级统计间接推导相关情况,具体依赖以下属性:

  • executionStats.totalDocsExamined:明确显示查询扫描的总文档数(对应假设中的100万条)
  • executionStats.nReturned:明确显示查询最终返回的文档数(对应假设中的1000条)
  • executionStats.executionStats.pageFaults:统计查询执行过程中,因内存缓存未命中而从磁盘加载的数据页数量。这些页包含了被扫描的文档,结合WiredTiger默认16KB的页大小、你的文档平均大小,可以估算出从磁盘读取的文档数量范围。

需要注意的是:MongoDB是按数据页批量加载数据的,一个页中可能包含多个文档,因此explain不会精准统计单个文档的磁盘/内存读取情况,只能通过页级数据间接判断。

要获取这些统计,需执行带指定模式的explain命令,例如:

db.yourCollection.find({/* 查询条件 */}).explain("executionStats")

内容的提问来源于stack exchange,提问作者Bear Bile Farming is Torture

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 16:45:56