mysql 优化(3)聚簇索引和非聚簇索引

黄舟
黄舟 原创
2016-12-29 16:07:10 1621浏览

聚簇索引和非聚簇索引 是btree 大类

按照算法 btree

hash散列(memory引擎)在内存里

mysam

innodb

组织数据上有区别 虽然都是btree 按照算法分

mysam 指向改行磁盘位置 索引和数据独立 非聚簇 相互独立

innodb 指向引用 本身有数据全部 聚簇 聚在这! 因为既存储主键值 又存储行数据 因此称为 聚簇索引

主索引藏着改行数据 称为聚簇索引 , 次索引指向对主键的引用 。

没有主键会去找是不是有一个unique key ... 没有 unique key 系统会生成一个row id
不回行 不规则插入会造成页分裂

innodb

优势: 根据主键查询条目比较少时,不用回行(数据就在主键节点下)

劣势: 如果碰到不规则数据插入时,造成频繁的页分裂

分别规则插入10000条数据,不规则插入10000条数据

观察时间的差异,体会聚簇索引,页分裂的影响.

以上就是mysql 优化(3)聚簇索引和非聚簇索引的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。