目录
总结
二叉平衡树:利用折半查找思想,减少了查找次数。查找性能主要取决于树的高度。同时无法避免范围匹配的“回旋索引”问题
B树一个节点可以存多个数据,减少了树的高度,降低了查找次数。但仍然无法解决回旋索引的问题。
B+树中的数据顺序存储在叶子节点上,并用指针相连。避免了回旋索引的问题
前言
关于索引的基本概念可参考这篇博客https://blog.csdn.net/Delicious_Life/article/details/105466368
我们知道MySQL的索引结构使用了B+树,想必读者很想知道为什么百度B+树会搜出来个B树,B树和B+树到底有什么异同?要清楚这些内容,首先我们要了解平衡二叉树
注意:二叉排序树和B树在范围查询时都无法避免回旋查询,只有B+树可以。
平衡二叉树
程序运行时需要从本地磁盘加载到内存中。每次从磁盘加载到内存都可以看做是一次I/O操作,而这种I/O操作是很耗费时间和性能的。因此MySQL在设计索引时考量的重点是