MySql 之 B+ Tree

B+树是什么?


4阶B+树

1.B+树是一种多路平衡搜索树。

2.非叶子节点只保存键值信息(即索引)和子节点的指针,数据记录保存在叶子节点中。

3.叶子节点数 == 非叶子节点数。

4.叶子节点实质为链表(递增排序),方便按顺序检索。

5.所有叶子节点都处于同一深度(借助于B+树特殊的插入删除算法 实现)。

6.B+树的java实现

MySql为什么要用B+树?

磁盘的读取原理 有关。简单来说,由于机械硬盘的物理结构,我们取数据时要尽量减少磁盘IO次数。在一个深度为4的B+树中,仅需3次磁盘IO即可拿到叶子节点的数据(根节点索引保存在内存中)。对于每个叶子节点数据,所需磁盘IO次数相同。

B+树是对机械硬盘特别设计的数据结构。但是在SSD时代已然有其存在价值。


本文仅为简单说明,如有勘误请及时指正。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容