mysql-为什么使用b+树 不使用b树 或 红黑树

1. 为什么不使用红黑树

  1. 红黑树保存在内存中,数据库表太大无法保存

  2. 红黑树的查询一个节点最多要logn次io 查询效率过低

2. b树与b+树的区别

  1. b树的节点都是数据节点 b+树只有叶子节点是数据节点非叶子节点起引导作用不存储全部数据

  2. b+树的数据节点都是叶子节点 并且相邻叶子节点有链表相连接

3. b树为什么不如b+树

  1. b+树的内部节点只存储引导数据索引值加页号 所以一个节点可以存储更多的数据项 这样b+树的层级就更低

  2. b+树的叶子节点有链表相连 适合范围查询

posted @ 2022-03-30 15:55  rudynan  阅读(338)  评论(0编辑  收藏  举报