网易5位大牛推出MySQL内核InnoDB存储引擎360笔记( 二 )


第六章存储管理:本章介绍了InnoDB存储引擎的物理存储方式 , 这包括表空间的构成 , 段、区、页的存储管理 。 此外 , 还介绍了InnoDB存储引擎的文件操作方式 , 包括文件操作的架构设计、同步读/写方式和异步读/写方式 , 分别介绍了Windows操作系统、Posix 操作系统以及InnoDB模拟的三种异步IO的实现方法 。
网易5位大牛推出MySQL内核InnoDB存储引擎360笔记文章插图
第七章记录:本章介绍了InnoDB存储引擎的记录(record) ,使读者了解在源码中记录可以分为物理记录与逻辑记录 , 以及各种记录所使用的场合 。
网易5位大牛推出MySQL内核InnoDB存储引擎360笔记文章插图
第八章索引页:本章介绍了InnoDB存储引擎的索引页 , 知道在源码中也可以分为物理页与逻辑页 , 并且详细分析了page header以及page directory 。 此外 , 还对InnoDB存储以及如何在页中进行记录的定位、插入和删除等操作进行了详细介绍 。
网易5位大牛推出MySQL内核InnoDB存储引擎360笔记文章插图
第九章锁:本章介绍了InnoDB存储引擎锁的实现技术 。 在InnoDB存储引擎中 , 其通过next-key locking算法在事务隔离级别REPEATABLE READ实现了完全的隔离性要求 。 此外 , 其对锁的设计是一种极其高效的设计方式 。 每个内核开发人员都应该细读lock 模块 , 从而更为深入地理解锁的内部实现 。
网易5位大牛推出MySQL内核InnoDB存储引擎360笔记文章插图
第十章B+树索引:本章对InnoDB存储引擎的B+树索引实现做了十分详细的介绍 。 该部分所需要涉及的内容非常多 , 与前面章节的联系也比较紧密 , 是一个极为重要的章节 。 希望读者可以反复阅读 , 从而更好地体会InnoDB存储引擎中B+树索引的实现 。
网易5位大牛推出MySQL内核InnoDB存储引擎360笔记文章插图
第十一章Insert Buffer:本章介绍了InnoDB存储引擎中Insert Buffer的实现 , 首先介绍了Insert Buffer的基本概念 , 然后介绍了Insert Buffer 的物理与逻辑存储结构 , 并通过一个示例进行展示 。最后 , 介绍了Insert Buffer的源码实现 。 我认为这个模块是难度最大的模块之一 。 只此工请化 , 各内中地论
网易5位大牛推出MySQL内核InnoDB存储引擎360笔记文章插图
第十二章缓冲池:本章介绍了InnoDB存储引擎缓冲池的实现 , 这包括缓冲池的管理、页 的读取和页的刷新 。 此外 , 还介绍了InnoDB存储引擎使用midpoint insertion strategy LRU的LRU管理机制 。
网易5位大牛推出MySQL内核InnoDB存储引擎360笔记文章插图
第十三章事务处理:本章介绍了InnoDB存储引擎的事务处理模块 , 介绍了InnoDB存储引擎对于undo记录的存储方式 , 这其中涉及事务系统段、回滚段、undo段、undo页、undo日志、undo记录等多个概念 , 读者应该好好地理清这些概念 。 此外 , 还讲述了事务的purge、rollback. commit 等操作的具体实现 。 相信通过本章的学习读者可以了解如何设计一个高效的事务系统 。
网易5位大牛推出MySQL内核InnoDB存储引擎360笔记文章插图
第十四章数据字典:本章介绍了InnoDB存储引擎对于数据字典的具体实现 , 以及其与之前各章的联系 。
网易5位大牛推出MySQL内核InnoDB存储引擎360笔记文章插图
第十五章服务管理:本章介绍了InnoDB 存储引擎各服务模块的管理 , 并展示了这些服务模块的具体实现 。


推荐阅读