innodb存储引擎
InnoDB体系结构
缓冲池(buffer pool):缓存的数据类型如下图所示

数据页:聚集索引页(自增主键有顺序)
索引页:其他辅助索引页(插入没有顺序)
1.重做日志缓冲:会有三种情况将重做日志缓冲中的内容刷新到磁盘的重做日志文件中
(1):Master Thread 每秒将重做日志缓冲刷到重做日志文件
(2):每个事务提交时,会刷新
(3):当重做日志缓冲剩余空间小于1/2时,会刷新
2.insert buffer/change buffer(包含 insert delete purge):是一个B+树,全局只有一个,存放在共享表空间中
merge insert buffer/change buffer操作可能发生在一下几种情况:
(1):辅助索引页被读取到缓冲池中(select查询时,需检查insert buffer/change buffer,如果有,则将该页的insert buffer/change buffer更新到辅助索引页)
(2):insert buffer/change buffer bitmap页追踪到辅助索引页无可用空间(insert buffer/change buffer bitmap页可以来追踪到每个辅助索引页可用空间,如果检测到更新记录后可用空间小于1/32,则会强制更新)
(3):Master Thread 定时merge
具体流程图


浙公网安备 33010602011771号