剑指Offer(sql)——通过B+树来优化索引

上一专题也说了关于B树优化索引的方法,现在再来说一下B+树来优化索引的方法。

B+树是B树的变体,其定义基本与B树相同,除了:

  1. 非叶子节点的子树指针与关键字个数相同。
  2. 非叶子节点的子树指针P[i],指向关键字值[K[i],K[i+1])的子树
  3. 非叶子节点只用来做索引,数据都保存在叶子节点中。
  4. 所有叶子节点均有一个链指针指向下一个叶子结点。

结论:

  1. B+树比B树能存更多的关键字,让我们通过关键字,前往叶子节点找具体的数据
  2. B+树可以做到比B树更矮,IO更少
  3. B+树的查询效率更加稳定
  4. B+树更加有利于对数据库的扫描。

相关文章: