【发布时间】:2019-09-05 08:50:36
【问题描述】:
当结果集很大时mongodb.countDocuments很慢
用户收集测试数据:
- 10M 文档,状态为
'active' - 100k 文档,状态为
'inactive'
字段status 已编入索引{状态:1}
db.users.countDocuments({status: 'active'}) 需要 2.91 秒
db.users.countDocuments({status: 'inactive'}) 需要 0.018 秒
我了解countDocuments 使用聚合来查找和计算结果。
estimatedDocumentCount() 在这种情况下不起作用,因为需要查询过滤器
有什么改进建议吗?
【问题讨论】:
标签: mongodb