美文网首页
普通索引和唯一索引选择

普通索引和唯一索引选择

作者: zhtttyi | 来源:发表于2020-07-23 08:16 被阅读0次

    查询过程

    普通索引:查找满足条件的第一个记录后,接着查找下一个记录,直到查到第一个不满足条件的记录。

    唯一索引:由于索引定义了唯一性,查找到第一个满足条件的记录后,就会停止继续检索。

    更新过程

    为了说明普通索引和唯一索引对更新语句性能的影响这个问题,先介绍一下change buffer

    更新一个数据页时,这个数据页还没有在buffer pool时,InooDB会将这些更新操作缓存在change buffer中,下次查询需要访问这个数据页的时候,将数据页读入内存,然后执行change buffer中与这个页有关的操作
    如果能够将更新操作先记录在change buffer,可以减少磁盘读写操作,语句(例如,具有大量DML操作的应用程序,例如批量插入)执行速度会得到明显的提升。而且,数据读入内存是需要占用buffer pool的,所以这种方式还能够避免占用内存,提高内存利用率

    参考链接:https://dev.mysql.com/doc/refman/8.0/en/innodb-change-buffer.html

    相关文章

      网友评论

          本文标题:普通索引和唯一索引选择

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