mysql 索引的探究
索引是帮助Mysql,高效获取 数据的排好序 的数据结构。
索引的数据结构:
- 二叉树
- 红黑树
- Hash表
- B-Tree (mySql底层采用的数据结构)
二叉树
缺点
如何所示,如果是第一列的数据情况,二叉树就变成了这样
类似于链表
红黑树
红黑树,满足二叉树的特点,自旋,平衡
缺点:
数据量大的时候,树的高度大,,如果查找的元素,在叶子节点,,导致查找比对次数多,不高效。
B树
B+树(B树的变种)
这种数据结构,高度为3,可以存放,2000万多的数据,
聚集索引是索引和数据,在一个文件存储,,非聚集索引是,索引和数据在不同的文件存储