Mysql中B+Tree索引结构、遍历次数、磁盘io次数分析
一.Mysql数据库常见存储引擎
1.可以作为索引文件的数据结构:
二叉树,红黑树,hash表,B-tree,B+tree,但是二叉树,红黑树受到树高问题限制,hash表无法进行索引排序无法进行查询,B-tree无法充分利用非叶子节点的存储能力,所以在mysql数据库中最常用的索引存储数据结果为B+tree;
2.索引文件组织结构:
聚簇索引:索引字段+全部其他表字段保存在一个文件中,索引树的叶子节点即表中全量数据;
非聚簇索引:索引字段和表中全量字段分两个文件进行保存,索引树的叶子节点中存储对应全量数值在磁盘上的地址;
3.mysql数据库中常用的存储引擎:
MyISAM:采用非聚簇索引,不支持行级锁,不支持事 务;数据结构如下图所示:
innoDB:采用聚簇索引&#