Mysql索引
1.为什么mysql不选择二叉树
当数据为顺序结构的时候,二叉树就会退化成单项链表,不利于查询。
变种--通过自旋旋转-->红黑树
2.为什么不选用红黑树
红黑树的深度比较高的话(数据量大) 查询最大的数据可能耗费时间比较久。
变种---通过用空间换时间(把一段数据当做节点,一段一段的)---->B树
3.为什么不选择B树
因为B树的话 load根节点到内存太多的话 内存撑不住,所以mysql选择了B树的变种
4.B+树 mysql会选择B树的变种 B+树才存储索引
所有非叶子节点都存储的是索引以及下一级叶子节点的下标 ,mysql