摘要:
1、概念 聚集索引就是以主键创建的索引,非聚集索引就是以非主键创建的索引 2、区别 (1) 聚集索引在叶子节点存储的是表中的数据,非聚集索引在叶子节点存储的是主键和索引列。使用非聚集索引查询出来的数据时,拿到叶子上的主键再去查找想要的数据。(拿到主键再查找这个过程叫回表)。 (2) 非聚集索引也叫做 阅读全文
摘要:
1、哈希索引采用的是哈希算法,把键值换算成新的哈希值,检索时不需要类似B+树那样从根节点到叶子节点逐级查找,只需要一次哈希算法即可立即定位到相应的位置,速度非常快。 2、本质上就是把键值换算成新的哈希值,根据这个哈希值来定位。 3、哈希值的局限: 第一,哈希索引没有办法理由索引完成排序。 第二,不支 阅读全文
摘要:
索引为什么能提高检索速度? 索引将无序的数据变成有序(相对),如果没用索引我们需要遍历双向链表来定位对应的页。有了索引就通过“目录”很快能定位到对应的页上。底层结构是B+树,B+树作为树的一种实现,能够让我们很快地查找出对应的记录。 为什么索引会降低插入、删除、修改等维护任务的速度? 1、B+树是平 阅读全文
摘要:
1、MySQL的基本存储结构是页(记录都存在页里面),每个数据页可以组成一个双向链表。而每个数据页中的记录又可以组成一个单向链表。 2、每个数据页都会为存储在里面的记录生成一个页目录,在通过主键查找某条记录的时候可以在页目录中使用二分法快速定位到对应的槽,然后再遍历该槽对应分组中的记录即可快速找到指 阅读全文