mongodb - MongoDB 的估计计数查询有多准确?
问题描述
官方的 MongoDB 驱动程序提供了“计数”和“估计文档计数”API,据我所知,前一个命令是高度内存密集型的,因此建议在需要它的情况下使用后者。
但是这个估计的文档数量有多准确?在生产环境中可以信任计数,还是在需要绝对准确性时使用推荐的计数 API?
解决方案
比较这两者,对我来说,很难想象出一个你想要使用countDocuments()
whenestimatedDocumentCount()
是一个选项的场景。
即 is 的等价形式,estimatedDocumentCount()
即countDocuments({})
空查询过滤器。第一个函数的成本是O(1)
; 第二个是O(N)
,如果N
非常大,成本将令人望而却步。
两者都返回一个计数,在部署 Mongo 的场景中,它可能是非常短暂的,即,随着集合的变化,当你拥有它时它是不准确的。
推荐阅读
- php - 编写使用外部共享库的 php 扩展
- javascript - 如何将变量添加到正则表达式以匹配
- python - Spacy Matcher 日期模式将匹配连字符,但不匹配正斜杠?
- firebase - Firebase 实时复合查询
- python - 如何添加不同的延迟?
- javascript - 如何将动态数据推送到 AM Charts 4 数据属性
- webpack - Webpack 外部可选模块
- applescript - 如果 Google Chrome 或 Microsoft Edge 不存在标签 2,如何打开它?
- editor - 如何禁用在嚎叫编辑器中显示的文件名?
- opengl - 立方体没有出现在OpenGL中