首页  >  问答  >  正文

nosql - 求大神详细阐述下mongodb的索引的工作是如何节省时间的?

MongoDB 索引
索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录。
这种扫描全集合的查询效率是非常低的,特别在处理大量的数据时,查询可以要花费几十秒甚至几分钟,这对网站的性能是非常致命的。

索引是特殊的数据结构,索引存储在一个易于遍历读取的数据集合中,索引是对数据库表中一列或多列的值进行排序的一种结构

以上是官方的解释()

我想知道的是创建了索引,在查询的时候数据库是怎么工作来找数据的,难道不是一样全部爬一遍数据库??如何达到节省时间,如何工作的这个百度了半天也没人能给下解释,

强调一下,我不是在问如何使用索引,我是在问索引是如何达到目的节省时间的

黄舟黄舟2702 天前557

全部回复(2)我来回复

  • 阿神

    阿神2017-05-02 09:27:14

    本质上你可以理解为2分查找

    回复
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-02 09:27:14

    百度一下吧。有很多文档的。MongoDB 的索引主要是一种 B-Tree 索引,大多数的数据库的B-Tree索引的原理是一样。

    回复
    0
  • 取消回复