Mysql-B树和B+树的区别

在这里插入图片描述
当我们为ID去建立一个主键索引的时候,Mysql底层就会为我们去维护一棵树的结构,从而提升我们的数据检索效率,树的共同特性:小的索引在左边,大的索引在右边,每一次结点的寻址,都是一次磁盘的IO(如果IO的次数越少,检索的性能就越快)

在这里插入图片描述
在这里插入图片描述

B树每一个结点都存储了索引和数据

在这里插入图片描述
在这里插入图片描述
B+树把所有的数据都放在了最下面的叶子结点,而非叶子结点只存储索引,留出更多的空间,去存储更多的索引,从而可以组织一颗更宽的一颗B+树,树更宽,进行IO的数据检索次数就更少了,进而查询效率更快

Innodb引擎为什么要将B+树作为它默认的数据结构

B树

  • 每一个结点都存储了索引和数据----树更高
  • 无叶子结点链表结构-----范围支持不好

B+树

  • 数据只存储在叶子结点----树更矮
  • 叶子结点通过双向链表相连-----范围查询性能好

视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值