喜迎
春节

B树与B+树


B+Tree对比BTree的优点

  • 磁盘读写代价更低
    一般来说B+Tree比BTree更适合实现外存的索引结构,因为存储引擎的设计专家巧妙的利用了外存(磁盘)的存储结构,即磁盘的最小存储单位是扇区(sector),而操作系统的块(block)通常是整数倍的sector,操作系统以页(page)为单位管理内存,一页(page)通常默认为4K,数据库的页通常设置为操作系统页的整数倍,因此索引结构的节点被设计为一个页的大小,然后利用外存的“预读取”原则,每次读取的时候,把整个节点的数据读取到内存中,然后在内存中查找,已知内存的读取速度是外存读取I/O速度的几百倍,那么提升查找速度的关键就在于尽可能少的磁盘I/O,那么可以知道,每个节点中的key个数越多,那么树的高度越小,需要I/O的次数越少,因此一般来说B+Tree比BTree更快,因为B+Tree的非叶节点中不存储data,就可以存储更多的key。
  • 查询速度更稳定
    由于B+Tree非叶子节点不存储数据(data),因此所有的数据都要查询至叶子节点,而叶子节点的高度都是相同的,B+Tree的高度一般都在2~4层,因此所有数据的查询速度都是一样的。

参考文档

https://blog.csdn.net/u013235478/article/details/50625677


文章作者: Crazy Boy
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Crazy Boy !
评 论
 上一篇
谈谈MySQL中的聚簇索引和非聚簇索引
谈谈MySQL中的聚簇索引和非聚簇索引
聚簇索引和非聚簇索引的区别聚簇索引的主索引的叶子结点存储的是键值对应的数据本身,辅助索引的叶子结点存储的是键值对应的数据的主键键值。 聚簇索引的数据和主键索引存储在一起。聚簇索引的数据是根据主键的顺序保存。因此适合按主键索引的区间查找,可以
2022-03-21
下一篇 
Windows下电脑截图
Windows下电脑截图
1、QQ截图:ctrl+alt+A2、花式截图:Win+shift+S 可截任意形状3、微信截图:Alt+A4、浏览器截图:Ctrl+shift+X5、WPS截图:Ctrl+Alt+X
2022-03-20
  目录
hexo