了解索引

1.什么是索引?

  可以称索引是一种数据结构。

2.为什么使用索引?

  索引在 MySQL 中也叫做“键”,是存储引擎用于快速找到记录的一种数据结构。索引优化应该是对查询性能优化最有效的手段、善用索引能够轻易将查询性能提高好几个数量级。简单理解:优化查询速度。

3.索引的优劣:

  索引的优势:

    可以快速检索,减少 I/O 次数,加快检索速度;根据索引分组和排序,可以加快分组和排序。

  索引的劣势:

    1).索引本身也是表,因此会占用存储空间,一般来说索引表占用的空间是数据表的 1.5 倍;

    2).索引表的维护和创建需要时间成本,这个成本随着数据量增大而增大;

    3).构建索引会降低数据表的修改操作(删除,添加,修改)的效率,因为在修改数据表的同时还需要修改索引表。

索引四字总结:加速查询。

4.索引的使用规则

  1)适合建立索引的情况

    A.主键自动建立唯一索引
    B 经常作为查询条件在where或者order by语句中出现的列要建立索引
    C 作为排序的列要建立索引
    D 查询中与其他表关联的字段,外键关系建立索引;
    E 高并发条件下倾向组合索引
    F 用于聚合函数的列可以建立索引,则如使用了max(column_1)或者count(column_1)时的column_1就需要建立索引

  2)不适合建立索引的情况

    A 经常增删改的列不需要建立索引
    B 有大量重复的列不建立索引
    C 表记录太少不要建立索引

posted @ 2020-03-24 15:53  淡雅星光  阅读(193)  评论(0编辑  收藏  举报