MySQL索引:聚簇索引和非聚簇索引

参考:https://www.cnblogs.com/crazylqy/p/7615393.html

一:MySQL聚簇索引和非聚簇索引

1、聚簇索引

聚簇索引就是对磁盘上的实际数据重新组织以按照特定的一个或者多个列的值排序的算法

特点是存储数据的顺序和索引顺序一致 一般情况下主键会默认生成聚簇索引 且一张表有且只有一个聚簇索引;将数据存储与索引放到了一块,找到索引也就找到了数据。

2、非聚簇索引

非聚簇索引:数据存储和索引分开放,索引结构的叶子节点指向了数据的对应行,myisam通过 key_buffer 把索引先缓存到内存中,当需要访问数据时(通过索引访问数据),在内存中直接搜索索引,然后通过索引找到磁盘相应数据,这也就是为什么索引不在 key buffer 命中时,速度慢的原因(磁盘 IO)。

3、聚簇索引和非聚簇索引的区别是:

聚簇索引(innobe)的叶子节点就是数据节点,而非聚簇索引(myisam)的叶子节点仍然是索引文件 只是这个索引文件中包含指向对应数据块的指针

MySQL中不同的数据存储引擎对聚簇索引有不同的支持:

MyISAM使用的是非聚簇索引。

InnoDB使用的是聚簇索引,将主键组织到一棵B+树中,而行数据就储存在叶子节点上。

文章:https://blog.csdn.net/universsky2015/article/details/102712058

 

 



 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值