原文:为什么数据库用b+树不用b树和红黑树

前几天面试被问到了,没答好,记录一下: 首先说红黑树为什么不行: .红黑树必须存在内存里的,数据库表太大了,存不进去。 .即使你找到了把红黑树存进硬盘的方法,红黑树查找一个节点最多要查logN层,每一层都是一个内存页 虽然你只是想找一个节点,但硬盘必须一次读一个页。。 ,那么一共logN次IO,伤不起阿 所以我们必须考虑减少树的层数来减少IO次数从而加快查询 修改数据库效率,b和b 树都符合这样的 ...

2020-03-27 02:14 0 2567 推荐指数:

查看详情

B+对比

原文链接:https://blog.csdn.net/bytxl/article/details/40920165 hashmap为什么用二叉树而不用B+? hashMap的元素是动态修改的,修改元素,不用移动元素的位置,因为直接修改左右父指针的值就好 ...

Sun Apr 11 03:21:00 CST 2021 0 223
B+B的理解

出处:https://www.jianshu.com/p/86a1fd2d7406 写在前面,好像不同的教材对bb-的定义不一样。我就不纠结这个到底是叫b-还是b-了。 如图所示,区别有以下两点: B+中只有叶子节点会带有指向记录的指针,而B ...

Sun Apr 07 04:05:00 CST 2019 0 5967
为什么Mysql用B+做索引而不用B-

B+做索引而不用B- 那么Mysql如何衡量查询效率呢?– 磁盘IO次数。 一般来说索引非常大,尤其是关系性数据库这种数据量大的索引能达到亿级别,所以为了减少内存的占用,索引也会被存储在磁盘上。 B-/B+的特点就是每层节点数目非常多,层数很少,目的就是为了减少磁盘IO ...

Sat Feb 06 20:28:00 CST 2021 0 1116
B B+

B-Tree(B) 具体讲解之前,有一点,再次强调下:B-,即为B。因为B的原英文名称为B-tree,而国内很多人喜欢把B-tree译作B-,其实,这是个非常不好的直译,很容易让人产生误解。如人们可能会以为B-是一种,而B又是一种。而事实上是,B-tree就是指的B。特此说明 ...

Sat Jan 19 06:23:00 CST 2019 0 1185
BB+以及

1、BB+ (1)BB+的区别   1)B+中只有叶子节点会带有指向记录的指针;而B则所有节点都带有,在内部节点出现的索引项不会再出现在叶子节点中。   2)B+中所有叶子节点都是通过指针连接在一起,而B不会。 (2)BB+的优缺点   1)B优点:由于B ...

Wed Apr 15 04:51:00 CST 2020 0 1289
BB-B+B*

http://blog.csdn.net/quitepig/article/details/8041308 B 即二叉搜索: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字 ...

Tue Mar 24 21:53:00 CST 2015 1 10431
数据库为什么使用B+而不是B

BB+的区别主要有两点: 在B中,你可以将键和值存放在内部节点和叶子节点,但在B+中,内部节点都是键,没有值。叶子节点同时存放键和值 B+的叶子节点有一条链相连,而B+的叶子节点各自独立。 由于B+的内部节点只存放键,不存放值 ...

Fri Oct 12 19:39:00 CST 2018 0 1168
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM