为什么mysql 要用B+树而不用二叉树


 

 

 

 

 

 

1.B+树的层级更少
   B+树的高度一般为2-4层,所以查找记录时最多只需要2-4次IO,相对二叉平衡树已经大大降低了。
   范围查找时,能通过叶子节点的指针获取数据。例如查找大于等于3的数据,当在叶子节点中查到3时,
   通过3的尾指针便能获取所有数据,而不需要再像二叉树一样再获取到3的父节点。
2.B+树查询速度更稳定。
  B+所有关键字数据地址都存在叶子节点上,所以每次查找的次数都相同所以查询速度要比B树更稳定;
3.B+树天然具备排序功能
  B+树所有的叶子节点数据构成了一个有序链表,在查询大小区间的数据时候更方便,数据紧密性很高,缓存的命中率也会比B树高。

posted @ 2023-02-17 16:25  龙卷风之殇  阅读(209)  评论(0)    收藏  举报