文章目录
MySQL学习笔记-change buffer 和 redo log
在给 MySQL 建立二级索引的时候,从唯一性约束来说可以分为普通索引和唯一索引,但你知道这两种索引在查询和更新数据的时候性能有什么区别吗?然后 change buffer 和 redo log 的联系是什么呢?这篇文章就来学习一下普通索引和唯一索引的区别,以及涉及到的change buffer 和 redo log的联系。
1.笔记图

2.索引类型对查询性能的影响

- select id from T where k=5
- 普通索引:对于普通索引来说,查找到满足条件的第一个记录 (5,500) 后,需要查找下一个记录,直到第一个不满足 k=5 条件的记录
- 唯一索引:对于唯一索引来说,由于索引定义了唯一性,查找到第一个满足条件的记录后,就会停止继续检索
Tips:两者查询性能差距微乎其微。

本文探讨了MySQL中的change buffer和redo log在索引更新和查询性能中的作用。change buffer允许在不影响数据一致性的情况下,缓存对非唯一索引的修改,待下次访问时合并到内存数据页,提高更新性能并减少磁盘读取。redo log用于记录事务的改变,确保在系统崩溃后仍能恢复数据。选择普通索引还是唯一索引取决于是否需要利用change buffer优化更新性能。
最低0.47元/天 解锁文章
1112

被折叠的 条评论
为什么被折叠?



