【问题标题】:How to apply indexing in mongodb to read the whole data at once faster如何在 mongodb 中应用索引以更快地一次读取整个数据
【发布时间】:2016-06-23 20:23:54
【问题描述】:

当我使用查询 db.find({}, {'_id':0}) 在 MongoDB 中一次查询整个数据时,数据检索太慢了。 我正在使用 PyMongo 如何使用 Python 驱动程序更快地检索所有文档。 我认为索引可以使数据检索更快,但是如何对整个集合应用索引以使db.find({}) 对整个集合的查询运行得更快。

【问题讨论】:

    标签: python mongodb pymongo


    【解决方案1】:

    索引将大大加快在集合中查找文档的子集,但不会(据我所知)加快提取整个集合的速度。

    索引加快查找子集的原因是 mongo 不必遍历每个文档以查看它们是否与查询匹配 - 相反,mongo 可以通过在索引中查找每个特定文档位置来找到它。

    如果您要返回整个集合,则索引无效。 Mongo 基本上必须遍历集合中的每个文档。

    您选择的存储引擎影响速度,所以我建议您阅读 Wired Tiger 和 mmapV1 之间的区别。我知道有第三方的,但我想不出他们。

    【讨论】:

      猜你喜欢
      • 2011-06-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-13
      • 1970-01-01
      • 2016-08-16
      • 1970-01-01
      • 1970-01-01
      • 2013-06-17
      相关资源
      最近更新 更多