最近在理解索引时感觉非常迷惑,我通过举两个列子来表达我的迷惑,希望有大佬帮忙解答一下:
① 看到有的博客上面举例说:字典前面的目录,也就是把字的拼音、部首按照一定的机构编排并指向字的页码。
② 进入一家大型商城,我们会发现每层楼层都是分好类的,比如一楼是服装,二楼是餐饮,或者有些还进行了排序。
我的疑惑是,索引是需要在原有数据中抽取出结构性的数据重新编排并指向原来数据的位置,还是说只要是对数据进行编排以此提高检索效率就叫做索引。
首先你要理解索引是额外存储的,类似于书籍的目录。
既然它是目录,为了更好的查找,它就必须有序,按照某种顺序存储。检索时,按照顺序查到相应索引,索引有指向真正数据存储的物理存储位置。
这样会比原来全部查询速度更快,但相应的 要付出索引占用的存储资源