MyISAM与InnoDB的索引结构
现在我们硬盘上的数据,基本上都是使用B+Tree数据结构来进行存储数据的。
1、非聚簇(集)结构
MyISAM主键索引有二个文件,有一个是索引文件(以 .MYI 结尾),一个是数据文件(以 .MYD 结尾)。
通过索引查找数据的时候,是通过找到索引下面挂载的数据编号,通过这个编号找到我们的数据区,取出数据。如下图所示:
MyISAM普通索引与主键索引在硬盘上面的存储方式,都是一样的。Mysql服务器实现的不同点是主键索引是唯一不能重复的,普通索引是可以重复的。如下图所示:
2、聚簇(集)结构
innodb主键与数据是在一起的,所以Innodb引擎,表数据与表索引在一起,只有一个文件。如下图所示: