美文网首页
聚集索引及非聚集索引的理解

聚集索引及非聚集索引的理解

作者: 四环霉素 | 来源:发表于2018-01-26 15:19 被阅读0次

    说到底,有用的其实只有一种索引,那就是聚集索引。这两种索引都是以B-树的形式存储。

    但是聚集索引的叶子节点存储的是对数据库页(数据库保存数据最小单元)的引用。

    非聚集索引通常情况下保存的是对聚集索引的引用。所以查找非聚集索引其实也是对聚集索引的查找。

    由于聚集索引的底层数据结构是B-树,那么当给某一列添加聚集索引之后,数据的物理保存顺序就会按照该列的逻辑顺序排序存储。因为B-树类似于二分查找树。

    如果没有聚集索引,数据库页按照堆存储,建立了聚集索引,数据按B-查找树的形式存储,性能可想而知。

    所以建立聚集索引的列通常是唯一的且易于排序的列。自增长列就是一个不错的选择,因为自增长列可以有效避免insert操作带来的索引碎片。

    相关文章

      网友评论

          本文标题:聚集索引及非聚集索引的理解

          本文链接:https://www.haomeiwen.com/subject/elcwaxtx.html