一、架构
1、缓存
Buffer Pool
Redo Log Buffer
(1) 刷盘时机
- Master Thread 定时刷盘:每隔1s
- redo log buffer空间使用率超过50%
- 事务commit
Additional Buffer Pool
额外数据结构存储区,比如buffer control block2、后台线程
Master Thread
职责
缓存管理大管家,包含了缓存管理的所有功能:缓存合并(insert buffer)、脏页刷盘、数据页回收(undo log)。其中部分职责可以下放到其他线程中去执行I/O Thread
职责
负责文件I/O请求的回调,包含4种线程类型。
Purge Thread
职责
负责回收已经分配使用的undo页。Page Clean Thread
职责
负责脏页刷盘工作。
二、设计
1、Write Ahead Log
随机写优化为顺序写。redo日志用于保障,已提交事务的ACID特性。
