B树,B+树区别,以及使用场景

B树和B+树,因为几点存储的元素比较多,所以B树和B+树就是非常矮的树,树高和磁盘io的次数是成正比的,所以B树和B+树,所需要的磁盘io时间是非常少的。B树与B+树能大幅降低磁盘访问次数。B树的优点在于数据存储在每个结点中,可以更快访问到,而不必须走到叶子结点,B树更多的用在文件系统中。B+树的每个非叶子结点都只充当索引,所以查询必须到叶子结点结束,但它十分适合"扫库"和区间查找,而且因为大多结点只用于索引,所以并不会存储真正的数据,在内存上会更紧凑,相同的内存就可以存放更多的索引数据了。比如字典的拼音和汉字是分离的,只需要几十页就能得到完整的拼音表,但是如果拼音和汉字掺杂在一起,要得到完整的索引(拼音)表就需要整个字典。B+树的这些特性使得它更适合用来做数据库的索引。

相关推荐
沐苏瑶2 小时前
Java 搜索型数据结构全解:二叉搜索树、Map/Set 体系与哈希表
java·数据结构·算法
ccLianLian2 小时前
深度学习·DDPM
数据结构
云泽8084 小时前
深入 AVL 树:原理剖析、旋转算法与性能评估
数据结构·c++·算法
ZoeJoy87 小时前
算法筑基(一):排序算法——从冒泡到快排,一文掌握最经典的排序算法
数据结构·算法·排序算法
承渊政道8 小时前
【优选算法】(实战体会位运算的逻辑思维)
数据结构·c++·笔记·学习·算法·leetcode·visual studio
承渊政道8 小时前
【优选算法】(实战推演模拟算法的蕴含深意)
数据结构·c++·笔记·学习·算法·leetcode·排序算法
历程里程碑10 小时前
Protobuf 环境搭建:Windows 与 Linux 系统安装教程
linux·运维·数据结构·windows·线性代数·算法·矩阵
代码探秘者11 小时前
【算法】吃透18种Java 算法快速读写模板
数据结构·数据库·python·算法·spring
WolfGang00732111 小时前
代码随想录算法训练营 Day21 | 回溯算法 part03
数据结构·算法
深邃-11 小时前
数据结构-队列
c语言·数据结构·c++·算法·html5