唯一索引指的是有唯一性约束的索引,而普通索引则没有约束

两者在使用上的区别有:

  • 在查询场景下,未使用limit时,唯一索引匹配到之后立即返回,普通索引则需要

继续匹配下一条数据,直到不匹配才返回

  • 在更新场景下,如果数据不在buffer pool中,普通索引的更新可以先更新到change buffer中,多次更新可以在change buffer中合并,直到刷盘时才更新到磁盘,而唯一索引无法使用change buffer,因为需要从磁盘加载数据来判断是否符合唯一性

所以,如果是不存在buffer pool中的数据,需要更新的话,非唯一索引的效率更高,所以在写多读少的场景下非唯一索引的性能更高

标签: none

添加新评论