什么是聚簇索引/非聚簇索引
叶子节点:最下面那一层
聚簇索引:叶子节点上直接存储的数据

非聚簇索引:叶子节点上存储的是索引值和对应数据的地址

直接看起来聚簇索引查询效率应该比非聚簇索引效率高,毕竟少了一次地址查询的过程。但是加上辅助索引就不这么想了。
相关内容这篇写的不错
为什么我们见到的索引都是三层树结构
对于mysql他的每一个结点默认大小为16KB,假设索引值为int即4B同时指针(结点值之间的指针,就上图的空白部分)占6B,那么一个结点可以存储16KB/10B = 1648条数据

假设叶子节点每条数据1kb,一个叶子节点可存储16条
总数据数 = 1648x1648x16 = 4千来万
所以一般数据3层足够储存
博客介绍了聚簇索引和非聚簇索引,聚簇索引叶子节点直接存储数据,非聚簇索引存储索引值和对应数据地址,一般聚簇索引查询效率更高。还解释了 MySQL 索引多为三层树结构的原因,基于节点大小和数据存储量,三层树通常可存储大量数据。
5964

被折叠的 条评论
为什么被折叠?



