【算法打卡60天】Day41 B+树:MySQL数据库索引是如何实现的?

Day41
今天是B+树,提到MySQL就离不开B+树,今天这个学习内容正好可以
帮着更好的理解B+树。
学习内容 :B+树:MySQL数据库索引是如何实现的?

1.如何将二叉查找树改造成B+树?
如文中所说:
为了让二叉查找树支持按照区间来查找数据,改造下。树中的节点并不存储数据本身,而是只是作为索引。除此之外,我们把每个叶子节点串在一条链表上,链表中的数据是从小到大有序的。
主要是借助时间换空间的思路,把索引存储在硬盘中。它通过存储在磁盘的多叉树结构,做到了时间、空间的平衡。

2.B+树有哪些特点?
*
每个节点中子节点的个数不能超过 m,也不能小于 m/2;
*
根节点的子节点个数可以不超过 m/2,这是一个例外;
*
m 叉树只存储索引,并不真正存储数据,这个有点儿类似跳表;
*
通过链表将叶子节点串联在一起,这样可以方便按区间查找;
*
一般情况,根节点会被存储在内存中,其他节点存储在磁盘中。

你可能感兴趣的:(【算法打卡60天】Day41 B+树:MySQL数据库索引是如何实现的?)