聚集索引:聚集索引的逻辑顺序决定了表数据行的物理存储顺序。也就是数据库中相邻的记录在物理磁盘上的地址也是相邻的。因为真实的物理存储顺序只能有一种,所以一张表只能有一个聚集索引。

主键不一定是聚集索引,可以把其他唯一行作为聚集索引的。主键索引可以直接存储指向数据行的指针。

NoSQL用的是B-树索引。
MyISAM和Innodb引擎都是用的B+树索引,相对B-树叶子节点增加了顺序指针,方便做范围查询。
MyISAM用的是非聚集索引,叶子节点的保存地址,辅助索引也是。

Innodb索引是聚集索引,叶子节点直接保存地址,辅助索引是非聚集索引,叶子节点保存的是主键。

这解释了为什么Innodb主键需要尽可能简单,并且最好要单调(自增)。

Innodb 主键索引 插入 删除节点
https://www.cnblogs.com/George1994/p/7324759.html

请尽量再InnoDB上采用自增字段做表的主键。因为InnoDB数据文件本身是一棵B+tree,非单调的主键会造成在插入新纪录时数据文件为了维持B+Tree的特征而频繁的分裂调整,十分低效。而使用自增字段作为主键则是一个很好的选择。如果表使用自增字段,那么每次插入新的记录,记录就会顺序添加当前索引节点的后续位置,当一页写满,就会自动开辟一个新的页。这样就会形成一个紧凑的索引结构,近似顺序填满。由于每次插入时也不需要移动已有数据,因此效率很高,也不会增加很多开销在维护索引上。

数据库索引分类 聚集索引和非聚集索引相关推荐

  1. 聚集索引(聚簇索引)、非聚集索引(非聚簇索引)

    聚集索引(聚簇索引):1.索引的顺序和记录的物理顺序一致. 2.叶子节点是数据节点 非聚集索引(非聚簇索引):1.索引的顺序和记录的物理顺序不一致. 2.叶子节点是指针节点. 聚集索引(聚簇索引)和非 ...

  2. 聚集索引和非聚集索引的区别底层_数据库-索引相关

    一.什么是索引 在数据库中,索引的含义与日常意义上的"索引"一词并无多大区别(想想小时候查字典),它是用于提高数据库表数据访问速度的数据库对象. 总而言之,索引是一个排序的列表,在 ...

  3. 关于SQL 数据库表中的聚集索引和非聚集索引等

    原文地址:http://www.cppblog.com/zuoyinbo/archive/2008/06/03/52075.html          1.概念          索引是在数据库表或者 ...

  4. SQL中的索引知识点总结(聚集索引、非聚集索引)

    SQL里的索引(index)知识: 索引分为聚集索引和非聚集索引,数据库中的索引类似于一本书的目录,在一本书中通过目录可以快速找到你想要的信息(例如字典里按照拼音或部首查找).索引的目的是提高系统性能 ...

  5. 聚集索引与非聚集索引的总结

    一.索引简介 众所周知,索引是关系型数据库中给数据库表中一列或多列的值排序后的存储结构,SQL的主流索引结构有B+树以及Hash结构,聚集索引以及非聚集索引用的是B+树索引.这篇文章会总结SQL Se ...

  6. SQLServer之创建非聚集索引

    开始之前 典型实现 可以通过下列方法实现非聚集索引: UNIQUE 约束 在创建 UNIQUE 约束时,默认情况下将创建唯一非聚集索引,以便强制 UNIQUE 约束. 如果不存在该表的聚集索引,则可以 ...

  7. mysql创建非聚集索引_一文看懂聚集索引和非聚集索引的区别

    一.深入浅出理解索引结构 实际上,可以把索引理解为一种特殊的目录.微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引.簇集索引)和非聚集索引(nonclu ...

  8. mysql创建非聚集索引_聚集索引和非聚集索引的区别

    作者:riemann riemann.blog.csdn.net/article/details/90324846 一.深入浅出理解索引结构 实际上,可以把索引理解为一种特殊的目录.微软的SQL SE ...

  9. SQL Server 聚集索引 clustered index 非聚集索引Nonclustered Indexes键查找查找Key Lookup执行计划过程详解

    SQL Server 聚集索引非聚集索引键查找过程详解 索引的相关术语 1 堆(Heap)是一种没有指定排序的数据结构,通俗的理解堆就像是按照顺序排放的杂物.在数据库里也即是对应没有聚集索引. 2 聚 ...

  10. SQL Server 堆heap 非聚集索引 Nonclustered index 行号键查找RID loopup结合执行计划过程详解

    SQL Server 堆型数据与执行计划使用案例 索引的相关术语 1 堆(Heap)是一种没有指定排序的数据结构,通俗的理解堆就像是按照顺序排放的杂物.在数据库里也即是对应没有聚集索引. 2 聚集索引 ...

最新文章

  1. csdn上传资源提示“该资源已存在,请重新上传”
  2. Vi/Vim查找替换使用方法
  3. 想成为别人眼里的Python大牛,就必不可少的书单
  4. vue使用element ui实现下拉列表分页的功能!!!
  5. 目标检测第4步:显卡、GPU、CUDA、cuDNN的介绍及如何在Windows 10下安装cuDNN?
  6. uos系统虚拟机_体验中兴深度联合推出的「UOS」统一操作系统
  7. Xcode升级插件失效修复快捷方式
  8. 微信:情人节女性收520红包的数量是男性的3.9倍,有用户收到200多个
  9. android布局时长分析,Android性能优化:布局优化 详细解析(含、、讲解 )
  10. spring boot初步
  11. 不同VLAN间的通信
  12. 陕西省高等数学竞赛_陕西省高等数学竞赛试题答案
  13. CMMI3级认证过程记录
  14. mini计算机结构,简单拆机看内部构造_苹果 Mac mini MGEN2CH/A_台式电脑评测-中关村在线...
  15. VSCode配置触动精灵开发环境
  16. 旧电脑升级Win11
  17. java变量_Java变量
  18. web学习第七天:来自倔驴的怒吼——生理年龄不代表技术年龄
  19. 硬盘出现故障的5种表现
  20. 【编程练习】小强去春游

热门文章

  1. 曲线运动与万有引力公式_高中物理必修二曲线运动到万有引力公式
  2. stata学习笔记#连玉君老师profile.do文件下载设定 #varlist not allowed
  3. dcf是ea211发动机吗_哪些车型用ea211发动机
  4. nginx的七层负载均衡
  5. 输入show databases; 出现 SyntaxError: Unexpected identifier 错误
  6. pig技术指南V3.X
  7. 为什么写《大数据架构详解》这本书
  8. Hadoop伪分布部署
  9. 通过网络学习软件开发(1) (转本论坛)
  10. 城市规划规范大全html,城市规划规范大全