这三个链表都是基于描述数据块的双向链表 他在buffer pool中占用的内存仅仅只是他的基础结点(40字节左右)
1.free链表:buffer pool初始化完成后 将空白数据页的描述数据头尾连接起来
2.flush链表:存储增删改之后的脏页
3.lru链表:用来存储查询的页,常用的页会在头结点,不常用页会在尾节点.其中还有相应的一些lru的优化来处理预读页
4.当缓存页用完的时候会触发lru链表最尾部和flush链表刷入磁盘
这三个链表都是基于描述数据块的双向链表 他在buffer pool中占用的内存仅仅只是他的基础结点(40字节左右)
1.free链表:buffer pool初始化完成后 将空白数据页的描述数据头尾连接起来
2.flush链表:存储增删改之后的脏页
3.lru链表:用来存储查询的页,常用的页会在头结点,不常用页会在尾节点.其中还有相应的一些lru的优化来处理预读页
4.当缓存页用完的时候会触发lru链表最尾部和flush链表刷入磁盘