B树和B+树

索引:用于快速查找行的数据结构

B树

所有的值都是按照顺序存储,没有重复的元素,并且每个叶子节点到根节点的距离相同,B树的中间节点会存储数据指针信息,B树索引能够加快访问速度,是因为存储引擎不再需要全表扫描来获取数据。

B树和B+树

B+树

B+树有重复的元素,而且B+树只有叶子节点才存储数据指针信息,B+树的叶子节点有一个指针指向下一个叶子节点,把所有的叶子节点连起来。

B树和B+树
相比于B树,B+树的优点:

1、由于中间节点不存储指针信息,同样大小的磁盘页可以容纳更多的节点元素,树的高度下,数据量相同的情况下,B+树查找更快。

2、B+树每次查找都必须到叶子节点才能获取数据,而B树不一定,B树可以在中间节点上获取数据,因此,B+树查找时间更稳定。

3、B+树的每一个叶子节点都有指针指向下一个叶子节点,方便范围查找和全盘查询,只需要从第一个叶子节点开始顺着指针一直扫描下去,而B树要对树做中序遍历。