暂无商品咨询信息 [发表商品咨询]
本书是一部深入解析数据库内核技术的专业著作,系统阐述了InnoDB存储引擎在并发控制与崩溃恢复两大核心模块的设计理念,从可串行化理论基础到两阶段锁、MVCC等关键协议均进行了细致解读,并结合MySQL 8.0源码实现进行了实证分析。
本书以工业级数据库引擎InnoDB为核心,围绕并发控制与崩溃恢复两大主题进行深度阐述,通过理论和源码相结合的方式,为读者提供穿透式学习体验。
全书共10章,第1章对InnoDB存储引擎的基本概念进行介绍。第2章 ~第7章的主题是并发控制,从基础理论到两阶段锁协议,再到多版本并发控制技术以及多层事务模型,最后是InnoDB的具体实现。第8章和第9章的主题是崩溃恢复,首先介绍基于日志的崩溃恢复理论,然后通过实践分析InnoDB的具体实现。第10章补充介绍了InnoDB的其他重要组件。随书附赠源码等学习资料,获取方式见封底。
本书面向数据库内核开发者、高级DBA (数据库管理员 )及存储系统研究者,帮助读者真正掌握InnoDB的设计哲学与工程智慧,获得源码级理解的核心能力。
吴昊,浙江大学计算机硕士,就职于互联网一线大厂,专注于数据库内核技术近十年,一直致力于MySQL数据库底层实现原理的研究和探索。
目录
序
前言
第1章 InnoDB 存储引擎概述
1.1 什么是事务?
1.2 MySQL/InnoDB 概述
第2章 并发控制基础理论
2.1 调度
2.2 单层事务模型和多层事务模型
2.3 可串行化理论
2.3.1 终态可串行化
2.3.2 视图可串行化
2.3.3 冲突可串行化
第3章 并发控制协议
3.1 两阶段锁协议的定义及证明
3.2 两阶段锁协议的若干变种
3.3 TO、SGT 并发控制协议
3.3.1 TO 协议
3.3.2 SGT 协议
3.4 乐观并发控制协议
第4章 多版本并发控制
4.1 多版本并发控制理论
4.1.1 多版本可串行化
4.1.2 多版本调度的优先图
4.1.3 各种异像详解
4.2 细说隔离级别
4.2.1 基于锁的定义
4.2.2 基于异像的定义
4.2.3 基于 MVSG 的定义
4.3 多版本并发控制协议
4.3.1 MV2PL 协议
4.3.2 MVTO 协议
4.3.3 ROMV 协议
4.3.4 ROMV 和可重复读的异同
第5章 多层事务模型的并发控制
5.1 多层事务模型的定义
5.2 多层事务模型的并发控制算法
5.3 多层事务模型的并发控制协议
5.4 索引结构的并发控制
5.4.1 再谈写偏斜异常
5.4.2 NextKey Locking
5.4.3 耦合锁协议
第6章 InnoDB 并发控制实践
6.1 空间管理
6.1.1 数据段
6.1.2 数据区
6.1.3 空间分配和回收策略
6.2 基于 BTree 的索引
6.2.1 物理记录和逻辑记录
6.2.2 基于 BTree 的索引
6.2.3 基于锁的并发控制
6.2.4 BTree 的分裂和合并
6.2.5 持久化游标
6.2.6 主键索引与二级索引
6.3 Undo Log的实践
6.3.1 Undo Log 的组织形式
6.3.2 Undo Log的分配
6.3.3 Undo Log的记录
6.3.4 Undo Log的使用
6.4 多版本并发控制的实践
6.4.1 多版本并发控制的设计
6.4.2 多版本记录的回收
6.5 锁系统的实践
6.5.1 记录锁的获取
6.5.2 NextKey Lock
6.5.3 正确性论证
6.5.4 不同场景的加锁方式
第7章 各组件并发控制展望
7.1 从 BTree 说起
7.2 Redo Log 的可扩展性
7.3 多版本并发控制再设计
7.4 Buffer Pool 可扩展性讨论
第8章 崩溃恢复技术
8.1 可恢复性
8.2 对经典调度的扩展
8.3 基于日志的崩溃恢复理论
8.3.1 Undo/Redo Log
8.3.2 RedoWinner 算法
8.3.3 物理/逻辑日志
8.3.4 初识Checkpoint
8.3.5 事务中止的影响
8.3.6 RedoHistory 算法
8.3.7 多层事务模型的崩溃恢复
第9章 InnoDB 崩溃恢复实践
9.1 Buffer Pool
9.1.1 Buffer数据页
9.1.2 两个链表:LRU List 和Flush List
9.1.3 Buffer Pool 的基本操作
9.1.4 Buffer Pool 的并发控制
9.2 Redo Log
9.2.1 Redo Log的组织结构
9.2.2 Redo Log缓冲区
9.2.3 log writer 线程
9.2.4 无锁化改造
9.3 崩溃恢复
9.3.1 LSN
9.3.2 Checkpoint的实现
9.3.3 两阶段提交
9.3.4 InnoDB 的实现
第10章 InnoDB 其他模块选讲
10.1 变更缓冲区
10.1.1 变更缓冲区的组织形式
10.1.2 正确性保证
10.1.3 purge 操作的特殊性
10.2 数据描述语言(DDL)
10.2.1 什么是元数据
10.2.2 DDL 的分类
10.2.3 DDL 的执行过程
10.2.4 数据字典的实现
10.2.5 DDL 的原子性
10.3 BLOB
10.3.1 BLOB 简介
10.3.2 BLOB 的组织形式
10.3.3 BLOB MVCC 的实现
参考文献
| 基本信息 | |
|---|---|
| 出版社 | 机械工业出版社 |
| ISBN | 9787111806455 |
| 条码 | 9787111806455 |
| 编者 | 吴昊 著 |
| 译者 | -- |
| 出版年月 | 2026-04-01 00:00:00.0 |
| 开本 | 16开 |
| 装帧 | 平装 |
| 页数 | 264 |
| 字数 | 322 |
| 版次 | 1 |
| 印次 | 1 |
| 纸张 | 一般胶版纸 |
暂无商品评论信息 [发表商品评论]
暂无商品咨询信息 [发表商品咨询]