关系型数据库索引是什么,目的,原理及B,B+树区别

数据库索引到底是什么,是怎样工作的? - CSDN博客
http://blog.csdn.net/weiliangliang111/article/details/51333169
MySQL索引原理及慢查询优化 -
https://tech.meituan.com/mysql-index.html
数据库索引的实现原理 - CSDN博客
http://blog.csdn.net/kennyrose/article/details/7532032

 

区别:

如图所示,区别有以下两点:

1. B+树中只有叶子节点会带有指向记录的指针(ROWID),而B树则所有节点都带有,在内部节点出现的索引项不会再出现在叶子节点中。

2. B+树中所有叶子节点都是通过指针连接在一起,而B树不会。

 

B+树的优点:

1. 非叶子节点不会带上ROWID,这样,一个块中可以容纳更多的索引项,一是可以降低树的高度。二是一个内部节点可以定位更多的叶子节点。

2. 叶子节点之间通过指针来连接,范围扫描将十分简单,而对于B树来说,则需要在叶子节点和内部节点不停的往返移动。

 

B树的优点:

对于在内部节点的数据,可直接得到,不必根据叶子节点来定位。

 

从B树、B+树、B*树谈到R 树 - CSDN博客
http://blog.csdn.net/v_JULY_v/article/details/6530142

B树和B+树的区别 - iVictor - 博客园
http://www.cnblogs.com/ivictor/p/5849061.html

posted @ 2018-03-19 15:18  stevenlii  阅读(1691)  评论(0编辑  收藏  举报