mysql索引原理

mysql索引及实现原理

什么是索引

段落引用索引(在MySQL中也叫做”键(key)“)是存储引擎用户快速找到记录的一种数据结构。这是索引的基本功能。索引优化应该是对查询性能优化的最有效手段了。索引能够轻易将查询性能提高几个数量级,”最优“的索引有时比一个”好的“索引性能要好两个数量级。创建一个真正”最优“的索引经常需要重写查询。

索引的类型

B-TREE索引

image.png
优点:
1、首先B+树的中间节点不存储卫星数据,所以同样大小的磁盘页可以容纳更多的节点元素,如此一来,相同数量的数据下,B+树就相对来说要更加矮胖些,磁盘IO的次数更少。
2、由于只有叶子节点才保存卫星数据,B+树每次查询都要到叶子节点;而B树每次查询则不一样,最好的情况是根节点,最坏的情况是叶子节点,没有B+树稳定。
3、所有叶子节点形成有序链表,便于范围查询。

哈希索引

image.png
优势:
1、等值查询比B+TREE索引更快

mysql的索引是怎么实现

存储引擎:InnoDB
使用B+TREE索引,主键是聚簇索引,辅助索引使用的是非聚簇索引
聚簇索引:
叶子节点保存的是data本身
非聚簇索引:
叶子节点保存的是主键数据的存放地址

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值