mysql 索引 数据结构讲解

mysql 索引 数据结构讲解_第1张图片

二叉树 单边增长的情况下 没有任何优化  比如这样的 1 2 3 4 5 6 类似这样的

红黑树  相比二叉树  1 2  3 会自动平衡 ,变成  2 根节点, 1 左边 3 右边,红黑树缺点,需要 不停的 移动节点,影响性能,如果是 几百万的 数据量, 高度不可控制, 也是需要要查询几十次 ,也是非常慢的

BTree  一个节点存储 多个值

mysql 索引 数据结构讲解_第2张图片

mysql 索引 数据结构讲解_第3张图片

mysql 索引 数据结构讲解_第4张图片

mysql 索引 数据结构讲解_第5张图片

mysql 索引 数据结构讲解_第6张图片

节点后面又 指针,这样的好处  比如 做id>1  范围查询 非常快

B+ 根节点不存储data ,这样再相同的 大小 16K 下,可以存储更多的 索引,减少树的高度

箭头是双向的,  比如 id <1 也是可以查询的

 

mysql 索引 数据结构讲解_第7张图片

 

 

 

数据引擎 是形容 表结果的

mysql 索引 数据结构讲解_第8张图片

mysql 索引 数据结构讲解_第9张图片

 

聚集索引  索引数据 在一个 文件

非聚集索引 

 

mysql 索引 数据结构讲解_第10张图片

mysql 索引 数据结构讲解_第11张图片

mysql 索引 数据结构讲解_第12张图片

mysql 索引 数据结构讲解_第13张图片

mysql 索引 数据结构讲解_第14张图片

mysql 索引 数据结构讲解_第15张图片

联合索引

 

mysql 索引 数据结构讲解_第16张图片

 

你可能感兴趣的:(mysql 索引 数据结构讲解)