00-01 MySQL索引
1. 索引的本质
索引是帮助MySQL高效获取数据的
排好序
的数据结构
常见的数据结构
二叉树
红黑树
Hash表
B-Tree
通过二叉树这种数据结构建立的索引
其中二叉树的每个节点是以key-value的形式进行组织的,
key存放索引列的字段值, value存放该行数据的地址, 实现高效查询
2. B+ 数据结构
- 使用二叉树建立索引面临的问题: 海量数据时,树的深度太深, 查询效率变慢
- 解决方案, 一个节点存储多个索引值.
- 由此产生了B树索引 :
- B+ 树
非叶子节点不存储data, 值存储索引(冗余) , 这样就可以放更多的索引(不存data,节省空间)
叶子节点包含所有索引字段
叶子节点用指正连接, 提高区间访问的性能