zoukankan      html  css  js  c++  java
  • 05 | 深入浅出索引(下)

    回表:回到主键索引树搜索的过程,称为回表
    覆盖索引:某索引已经覆盖了查询需求,称为覆盖索引,例如:select ID from T where k between 3 and 5
    在引擎内部使用覆盖索引在索引K上其实读了三个记录,R3~R5(对应的索引k上的记录项),但对于MySQL的Server层来说,它就是找引擎拿到了两条记录,因此MySQL认为扫描行数是2
    最左前缀原则:B+Tree这种索引结构,可以利用索引的"最左前缀"来定位记录
    只要满足最左前缀,就可以利用索引来加速检索。
    最左前缀可以是联合索引的最左N个字段,也可以是字符串索引的最左M个字符
    第一原则是:如果通过调整顺序,可以少维护一个索引,那么这个顺序往往就是需要优先考虑采用的。
    索引下推:在MySQL5.6之前,只能从根据最左前缀查询到ID开始一个个回表。到主键索引上找出数据行,再对比字段值。
    MySQL5.6引入的索引下推优化,可以在索引遍历过程中,对索引中包含的字段先做判断,直接过滤掉不满足条件的记录,减少回表次数。
  • 相关阅读:
    002-mybatis主配置文件
    001-mybatis框架
    mybatis学习
    tcp连接与释放
    浏览器输入url的全过程
    设备
    读写分离(三)
    读写分离(二)
    读写分离(一)
    主从复制(三)
  • 原文地址:https://www.cnblogs.com/lakeslove/p/12238777.html
Copyright © 2011-2022 走看看