Rumah  >  Artikel  >  pangkalan data  >  mysql 优化(3)聚簇索引和非聚簇索引

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

黄舟
黄舟asal
2016-12-29 16:07:102167semak imbas

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

按照算法 btree 

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

mysam 

innodb

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

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

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

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

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

innodb 

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

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

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

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

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


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn