mongodb - MongoDB - 解释.executionStats
问题描述
MongoDB 的 explain("executionStats") 的输出中是否有任何元素给出了一个想法或提示 - 查询是使用给定的索引进行过滤或排序还是两者兼而有之?
我阅读了以下网址
用于BIG集合过滤和排序的mongodb复合索引[指向下面的URL并简要讨论]
https://emptysqua.re/blog/optimizing-mongodb-compound-indexes/ [这个给出了一般的想法,但是解释输出使用了我正在使用的 Mongodb 4.0 中不存在的旧格式/元素]
https://docs.mongodb.com/manual/tutorial/sort-results-with-indexes/ [记录如何确定索引和利用索引前缀,但确实显示了确认使用的解释输出]
解决方案
来自 MongoDB文档:
如果 MongoDB 可以使用索引扫描来获取请求的排序顺序,则结果将不包括 SORT 阶段。否则,如果 MongoDB 无法使用索引进行排序,则说明结果将包含 SORT 阶段。
例子:
在集合上创建索引:
推荐阅读
- mongodb - db.getCollection(...).find(...).aggregate 不是函数
- python - 如何在使用 df.astype() 时保留原始 pandas 数据帧值?我需要为下面的示例提出一个值错误
- java - Spring数据redis并发问题
- php - 如何解析 std 对象以获取特定数据
- autodesk-forge - Autodesk Forge Viewer - 如何在模型加载完成后触发事件?
- javascript - 将范围映射到单值 Javascript
- python - 使用正则表达式过滤字符串列表
- macos - mv 终端不允许操作
- firebase - 如何在 iOS XCUITest 期间配置 Firebase
- mysql - MySQL,选择不匹配的引用或引用在其他表中不存在