作品简介

事务是关系型数据库实现的核心内容,它具有原子性、一致性、隔离性和持久性等特点,是数据库实现并发控制和故障恢复的基础。

本书首先分析了PostgreSQL数据库事务的实现机制,包括事务的基本概念、两阶段锁的原理及实现方法、多版本并发控制的原理及实现方法、故障恢复的实现方法等,然后通过介绍物理复制、逻辑复制、Zheap引擎的原理及实现、SSI的实现、两阶段提交的原理及实现,使读者获得了对事务更深入的理解,从而使读者既能了解事务的原理,也能清楚事务的实现细节。

本书适合数据库内核开发及相关领域的研究人员、数据库DBA、高等院校相关专业的本科生或者研究生阅读。

张树杰,数据库内核专家,长期从事数据库内核开发工作,对数据库内核各个领域均有涉猎,精通数据库内核的原理和架构设计,近些年尤其专注于研究分布式数据库的查询优化及查询执行的改进。

作品目录

  • 内容简介
  • 前言
  • 第1章 事务概述
  • 1.1 事务的作用
  • 1.2 事务的性质
  • 1.3 事务的隔离级别
  • 1.4 PostgreSQL中的事务
  • 1.5 事务处理流程
  • 1.6 异步提交
  • 1.7 本章小结
  • 第2章 锁
  • 2.1 并发的异常现象
  • 2.2 调度
  • 2.3 并发控制
  • 2.4 两阶段锁
  • 2.5 PostgreSQL中的锁
  • 2.6 常规锁的内存结构
  • 2.7 常规锁的加锁
  • 2.8 行锁
  • 2.9 死锁检测
  • 2.10 本章小结
  • 第3章 MVCC
  • 3.1 元组上的版本信息
  • 3.2 快照
  • 3.3 获得快照
  • 3.4 可见性判断
  • 3.5 本章小结
  • 第4章 故障恢复
  • 4.1 故障的分类
  • 4.2 事务日志
  • 4.3 日志文件
  • 4.4 查看日志内容
  • 4.5 日志格式
  • 4.6 XLog初始化
  • 4.7 日志的注册
  • 4.8 日志的组成
  • 4.9 日志的写入
  • 4.10 控制文件
  • 4.11 Full Page Write
  • 4.12 检查点
  • 4.13 日志归档
  • 4.14 基础备份
  • 4.15 PITR
  • 4.16 故障恢复
  • 4.17 本章小结
  • 第5章 物理复制
  • 5.1 环境搭建
  • 5.2 物理复制
  • 5.3 同步复制
  • 5.4 Hot Standby
  • 5.5 物理复制槽
  • 5.6 本章小结
  • 第6章 逻辑解码与逻辑复制
  • 6.1 复制槽
  • 6.2 逻辑解码
  • 6.3 逻辑复制
  • 6.4 本章小结
  • 第7章 SSI
  • 7.1 SSI介绍
  • 7.2 “危险结构”
  • 7.3 SSI的优化方法
  • 7.4 SSI的实现方法
  • 7.5 本章小结
  • 第8章 Zheap引擎
  • 8.1 事务槽
  • 8.2 TPD
  • 8.3 元组的变化
  • 8.4 Undo日志
  • 8.5 事务槽的使用
  • 8.6 可见性判断
  • 8.7 Undo操作
  • 8.8 Undo日志清理
  • 8.9 本章小结
  • 第9章 两阶段提交
  • 9.1 两阶段提交简介
  • 9.2 PostgreSQL中的2PC
  • 9.3 本章小结
  • 附录A存储引擎概述
  • A.1 存储文件形式
  • A.2 缓冲区
  • A.3 SLRU
  • 附录B事务的文件结构
  • B.1 access目录
  • B.2 storage目录
  • B.3 replication目录
  • B.4 utils目录
展开全部