两者的区别
- B+树种只有叶子节点含有指向记录的指针(rowid),B树所有的节点都含有指向记录的指针,B树中在内部节点中出现过的索引项将不会再在叶子节点中出现。
- B+树所有叶子节点通过指针连接,B树不会。
B+树的有优势
- 叶子节点不含有指针,因此一个块总可以容纳更多的索引项,这样,一是可以降低树的高度,另一个是一个块可以定位更多的叶子节点。
- B+树的叶子节点通过指针项链,在做范围查询的时候非常快,不像B树,需要再叶子节点和内部节点之间来回移动。
B树的优势
内部节点含有指向记录的指针,不需要通过叶子节点来定位。