文件系统和数据库索引用B树而不是红黑树的原因

红黑树是二叉树,而B树可以大于2个节点,这使得B树高度小

高度小,意味着IO小,因为要不断的根据指针找下一个节点

而外存的IO速度你懂得吧,越少越好、

其次,由于局部性原理,以下是引用

即使只需要一个字节,磁盘也会从这个位置开始,顺序向后读取一定长度的数据放入内存。这样做的理论依据是计算机科学中著名的局部性原理:

当一个数据被用到时,其附近的数据也通常会马上被使用。

红黑二叉树,每根据指针寻找下一个节点时,节点周围的内存也会被读入,但他们并没有什么用

而B树就不一样了,好几个节点数据连在一起,就完全可以利用到。

猜你喜欢

转载自www.cnblogs.com/lxzbky/p/10928340.html