学软件技术,读第一手资料,去官方网站:MySQL 5.7参考手册

也可以看看比较经典的书籍,如《高性能MySQL》等


1、索引的好处,可以解决的问题

索引可以让服务器快速地定位到表的指定位置。但是这并不是索引的唯一作用, 到目前为止可以看到,根据创建索引的数据结构不同,索引也有一些其他的附加作用。

最常见的B-Tree索引,按照顺序存储数据,所以MySQL可以用来做ORDER BY和GROUP BY操作。

因为数据是有序的,所以B+Tree也就会将相关的列值都存储在一起。

最后,因为索引中存储了实际的列值,所以某些查询只使用索引就能够完成全部查询。

据此特性,总结下来索引有如下三个优点:
1、索引大大减少了服务器需要扫描的数据量。
2、索引可以帮助服务器避免排序和临时表。
3、索引可以将随机I/O变为顺序I/O。

2、对于特大型的表,索引可能就不是快速查找数据的方案了,考虑下分区技术

索引并不总是最好的工具,只有当索引帮助存储引擎快速查找到记录带来的好处大于其带来的额外工作时,索引才是有效的。

(1)对于非常小的表,大部分情况下简单的全表扫描更高效。

(2)对于中到大型的表,索引就非常有效。

(3)对于特大型的表,建立和使用索引的代价随之增大。在这种情况,则需要一种技术可以更直接区分出查询需要的一组数据,而不是一条一条记录地匹配。这时候可以使用分区技术。

011 索引的优点,特大型的表考虑分区技术相关推荐

  1. oracle 表分析 分区,细化解析:Oracle表分区

    Oracle表分区里可以把一个表分割为多个小部分,这样可以对Oracle表分区的查询性能,管理表数据,备份和恢复操作的性能优化带来改善. Oracle表分区分为好几种的(范围分区,散列分区,子分区,列 ...

  2. oracle表分区设计_Oracle数据库分区技术

    1.Oracle的分区技术基本原理: Oracle的分区技术的基本思路就是:分而治之. 2.分区概述 l 大数据对象(表.索引)被分成小的物理段 l 当分区表建立时,记录基于分区字段值被存储到相应分区 ...

  3. 索引的优点,索引优化原则

    2019独角兽企业重金招聘Python工程师标准>>> 索引的优点: 1.索引减少了在查询过程中扫描的数据量 2.索引可以帮助服务器避免排序和临时表 3.索引可以将随机I/O变为了顺 ...

  4. MySQL Innodb存储引擎使用B+树做索引的优点

    对于数据库来说,索引和表数据都是存放在磁盘上的,一般使用B+树作为索引 MySQL Innodb存储引擎使用了B+树作为索引的优点,主要有以下原因: 1.索引和表数据都是存放在磁盘上的,如果磁盘上的数 ...

  5. MySQL数据库中索引的优点及缺点

    一.索引的优点 1)创建索引可以大幅提高系统性能,帮助用户提高查询的速度: 2)通过索引的唯一性,可以保证数据库表中的每一行数据的唯一性: 3)可以加速表与表之间的链接: 4)降低查询中分组和排序的时 ...

  6. MySQL - 无索引行锁升级为表锁

    文章目录 生猛干货 无索引行锁升级为表锁演示 表结构 索引信息 操作演示 结论 搞定MySQL 生猛干货 带你搞定MySQL实战,轻松对应海量业务处理及高并发需求,从容应对大场面试 无索引行锁升级为表 ...

  7. 为什么要将表和索引建立在不同的表空间?

    上一个随笔引出的新问题,找到了一个参考: "Oracle强烈建议,任何一个应用程序的库表至少需要创建两个表空间,其中之一用于存储表数据,而另一个用于存储表索引数据.因为如果将表数据和索引数据 ...

  8. mysql 分表索引_mysql中,分表查询和索引查询哪个更快?

    谢谢邀请! 查询快慢主决的因素有很多,存储碎片.数据量大属于I/O类问题:表结构设计.查询语句属于技术是否熟练(经验)问题.对于你的分表快还是索引快的这个问题本身就是有问题的: 在建立数据表的时候,索 ...

  9. MySQL中B+树索引,聚簇索引,二级索引,辅助索引,回表,索引生效条件

    对于MySQL,我们经常说调优有一个手段就是加索引,那么为什么加索引能够优化查询,是不是加了索引查询就快了 ? 在MySQL中,存储的单元并不是按照我们理解的一条一条记录,而是按照页来进行存储的,My ...

最新文章

  1. vim粘帖的一个问题分析(pastetoggle)
  2. yii2 modal弹窗之ActiveForm ajax表单异步验证
  3. Spring5源码 - 13 Spring事件监听机制_@EventListener源码解析
  4. jQuery源码研究分析学习笔记-jQuery.deferred()(12)
  5. FontAwesome-网站ui设计中一套非常棒的icon
  6. select语句一些要点(一)
  7. 1天暴涨1300亿!中国移动最不争气的儿子,被王濛救活了?
  8. 大数据Python学习大纲
  9. 多张图片合成一个pdf文件的操作方法
  10. 微博商业数据挖掘方法
  11. Android Manager之SensorManager---距离传感器
  12. 微信开发者工具报错Cannotreadpro ‘getPreloadAdUnitIds‘ of undefinedat Object.dK [as getPreloadAdUnitIds]
  13. 一个启动U盘装多系统引导,无需反复格式化,ISO/WIM等文件拷贝到U盘即可启动
  14. 2022.02.14【读书笔记】|基于深度学习的生命科学 第2章 深度学习概论(上)
  15. mysql 字符串截取查询
  16. Ionic2 WARNING: sanitizing HTML stripped some content when no content stripped
  17. storm和vgj vgj_DOTA2:Team VGJ宣布解散,再见VGJ!
  18. DeadException
  19. 美团、大众点评 token最新算法——宇宙第一简洁版
  20. 毕业后的档案问题如何处理

热门文章

  1. SAP xsengine 403 - Forbidden(The server refused to fulfill the request.)
  2. 数据分析师是如何被淘汰的?
  3. C#学习笔记——观察者模式及实现
  4. “注水”的新力与“错付”的陈凯
  5. [杂项][原创]京东史上最差一次购物体验:一款神奇笔记本电脑机械革命x10ti
  6. 用英语表达“谢谢”,thank you,thank you very much的其他多种方式
  7. 模式识别分类器评价指标之DET曲线
  8. 英语 | Day19、20 x 句句真研每日一句(去修饰、嵌套)
  9. 2020-12-16 今日学习Date类
  10. 【统计机器学习-李航】第5章 决策树