b-tree、b+-tree、2-3-4树个人总结

是时候了解了解算法了:

b-tree、b+-tree:

1.b-tree非叶子节点包含关键字信息,b+-tree不包含关键字信息,仅保存关键字范围,所以b+-tree的树高度可能相对更低,能减少磁盘io;

2.b+-tree所有的信息存在叶子节点中

3.m阶的b+-tree的孩子个数为ceil(2/m)-1<=n<=m,而b-tree个数上限为m-1,所以每个b+-tree的节点孩子数比b-tree多(待确认);

4.mysql等存储系统使用带顺序指针的b+-tree,所以在顺序读取时,能够方便地读取到范围值,这样读取更快;

5.b-tree和b+-tree在插入、删除操作时,会自动分裂或合并,保持结构;

6.innodb二级索引存储的是键值而不是指针;

7.辅助索引使用主键作为"指针" 而不是使用地址值作为指针的好处是,减少了当出现行移动或者数据页分裂时辅助索引的维护工作,使用主键值当作指针会让辅助索引占用更多的空间,换来的好处是InnoDB在移动行时无须更新辅助索引中的这个"指针"


2-3-4树:

1.2-3-4树会自顶向下分裂;


参考:

http://blog.csdn.net/v_JULY_v/article/details/6105630

http://www.tuicool.com/articles/ZN7nu2

http://blog.jobbole.com/24006/

http://blog.csdn.net/v_july_v/article/details/6530142#comments

http://www.admin10000.com/document/5372.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值