美文网首页
聚集索引与非聚集索引

聚集索引与非聚集索引

作者: 鹅鹅鹅_ | 来源:发表于2019-10-25 15:51 被阅读0次

1、聚集索引

聚集索引决定数据在物理磁盘上的物理排序,一个表只能有一个聚集索引,如果定义了主键,那么InnoDB会通过主键来聚集数据,如果没有定义主键,InnoDB会选择一个唯一的非空索引代替,如果没有唯一的非空索引,InnoDB会隐式定义一个主键来作为聚集索引。

聚集索引可以很大程度的提高访问速度,因为聚集索引将索引和行数据保存在了同一个B-Tree中,所以找到了索引也就相应的找到了对应的行数据,但在使用聚集索引的时候需注意避免随机的聚集索引(一般指主键值不连续,且分布范围不均匀),如使用UUID来作为聚集索引性能会很差,因为UUID值的不连续会导致增加很多的索引碎片和随机I/O,最终导致查询的性能急剧下降。

2、非聚集索引

与聚集索引不同的是非聚集索引并不决定数据在磁盘上的物理排序,且在B-Tree中包含索引但不包含行数据,行数据只是通过保存在B-Tree中的索引对应的指针来指向行数据,如:上面在(user_name,city, age)上建立的索引就是非聚集索引。

  1. 覆盖索引
    hit here

相关文章

  • 聚集索引与非聚集索引

    1、聚集索引 聚集索引决定数据在物理磁盘上的物理排序,一个表只能有一个聚集索引,如果定义了主键,那么InnoDB会...

  • 聚集索引与非聚集索引

    一.索引简介 众所周知,索引是关系型数据库中给数据库表中一列或多列的值排序后的存储结构,SQL的主流索引结构有B+...

  • 聚集索引与非聚集索引

    1. 简介 数据库表主键 就是聚集索引,通过聚集索引,可以得到表的一整行数据;非聚集索引,是指数据库表的普通索引,...

  • sqlserver索引

    SQL中的索引分为两种,一种为聚集索引和非聚集索引,下面介绍两者的异同。 一、聚集索引与非聚集索引: 1、聚集索引...

  • 聚集索引非聚集索引

    sql的索引有B+树和Hash结构两种,聚集索引和非聚集索引都是采用B+树索引。 聚集索引 定义:数据行的物理顺序...

  • mysql索引专题考点总结

    聚集索引和非聚集索引的结构 [ 概念 ] 聚集索引, 非聚集索引, 回表 , 覆盖索引 索引用B+树存储, 假设索...

  • 聚集和非聚集索引

    转载: 聚集和非聚集索引 是什么?区别是? 聚集索引就是以主键创建的索引 非聚集索引就是以非主键创建的索引 区别:...

  • 避免回表与覆盖索引

    为什么要避免回表 mysql维护着两种索引树:聚集索引、非聚集索引。我们建立的索引都属于非聚集索引。通过非聚集索引...

  • QueryProcessing_INDEX

    聚合(聚集)索引____非聚合(聚集)索引 聚合(聚集)索引____Order ofdata recordsis ...

  • 索引

    索引类型:聚集索引和非聚集索引 字典的字母索引是聚集索引,偏旁索引是非聚集索引。总的来说聚集索引是存在一个已有顺序...

网友评论

      本文标题:聚集索引与非聚集索引

      本文链接:https://www.haomeiwen.com/subject/pvosvctx.html