数据库事务处理的艺术 事务管理与并发控制pdf下载

数据库事务处理的艺术 事务管理与并发控制 作者:李海翔 等数据库事务处理的艺术 事务管理与并发控制 出版社:机械工业出版社数据库事务处理的艺术 事务管理与并发控制 内容简介作者有近20年数据库内核研发经验,曾是Oracle公司MySQL全球开发组核心成员,现在是腾讯的T4级专家...

数据库事务处理的艺术 事务管理与并发控制 作者:李海翔 等

数据库事务处理的艺术 事务管理与并发控制 出版社:机械工业出版社

数据库事务处理的艺术 事务管理与并发控制 内容简介

作者有近20年数据库内核研发经验,曾是Oracle公司MySQL全球开发组核心成员,现在是腾讯的T4级专家。数据库领域的泰斗杜小勇老师亲自为是本书作序,数据库学术界的知名学者张孝博士(中国人民大学)、卢卫博士后(中国人民大学)、彭煜玮博士(武汉大学),以及数据库工业界的知名专家盖国强和姜承尧等也给予了极高的评价。

全书共12章,首先介绍数据库事务管理与并发控制的基础理论和工作机制,然后再从工程实践的角度对比和分析了4个主流数据库的事务管理与并发控制的实现原理,最后通过源代码分析了PostgreSQL和MySQL在事务管理与并发控制上的技术架构与设计思想。

第一篇(1-2章) 事务管理与并发控制基础理论

对数据库事务管理和并发控制的基础理论、核心技术和工作原理进行了讲解,包括数据库事务处理技术的范围、数据的异常现象及成因、事务模型、并发访问控制技术、以及隔离性等。

第二篇(3-6章) 事务管理与并发控制应用实例研究

以Informix、Oracle、PostgreSQL和MySQL/InnoDB等主流数据库系统为例,对他们的事务管理和并发控制的实现技术、工作原理以及原理背后的设计思想进行了深度分析和对比。

第三篇(7-9章) PostgreSQL事务管理与并发控制源码分析

首先对PostgreSQL事务处理技术的架构、层次、设计思想、相关数据结构和实现原理进行了深入系统的分析,然后从功能角度对PostgreSQL的事务模型、并发控制、一致性、隔离性以及其所使用的SS2PL、MVCC、SSI等技术做了深入的讲解。

第四篇(10-12章) InnoDB事务管理与并发控制源码分析

首先对事MySQL/InnoDB的务处理技术的架构、层次、设计思想、相关数据结构和实现原理进行了深入系统的分析,然后从功能角度对MySQL/InnoDB的事务模型、并发控制、一致性、隔离性以及其所使用的SS2PL、MVCC等技术做了深入的讲解。

数据库事务处理的艺术 事务管理与并发控制 目录

推荐序一

推荐序二

推荐序三

推荐序四

推荐序五

推荐序六

前言

第一篇 事务管理与并发控制基础理论

第1章 数据库管理系统的事务原理 2

1.1 事务模型要解决的问题 2

1.1.1 为什么需要事务处理机制 2

1.1.2 事务机制要处理的问题——事务故障、系统故障、介质故障 4

1.1.3 并发带来的问题椚?常见的读数据异常现象 4

1.1.4 并发带来的问题——写并发操作引发的数据异常现象 8

1.1.5 语义约束引发的数据异常现象 9

1.1.6 其他的异常 11

1.1.7 深入探讨三种读数据异常现象 13

1.2 事务处理技术的原理 17

1.2.1 什么是事务 17

1.2.2 事务的属性 20

1.2.3 ACID的实现技术 24

1.3 事务的模型 26

1.4 并发控制技术 27

1.4.1 并发控制技术的实现策略 27

1.4.2 并发控制技术的实现技术 28

1.5 日志技术与恢复子系统31

1.6 本章小结 32

第2章 深入理解事务管理和并发控制技术 33

2.1 在正确性和效率之间平衡 33

2.1.1 隔离级别 34

2.1.2 快照隔离 36

2.1.3 理解可见性 39

2.2 并发控制 40

2.2.1 基于锁的并发控制方法 42

2.2.2 基于时间戳的并发控制方法 47

2.2.3 基于有效性检查的并发控制方法 52

2.2.4 基于MVCC的并发控制方法 53

2.2.5 基于MVCC的可串行化快照隔离并发控制方法 56

2.2.6 再深入探讨三种读数据异常现象 60

2.3 并发控制技术的比较 62

2.3.1 并发控制技术整体比较 62

2.3.2 S2PL和SS2PL的比较 64

2.3.3 事务属性与并发控制技术的关系 65

2.3.4 SCO和SS2PL的比较 66

2.3.5 TO和SS2PL的比较 67

2.4 深入探讨隔离级别 68

2.4.1 隔离级别与基于锁的并发控制方法 68

2.4.2 隔离级别与各种并发控制技术 69

2.5 事务的管理 70

2.5.1 事务的开始 71

2.5.2 事务的提交 71

2.5.3 事务的中止与回滚 72

2.5.4 子事务与SAVEPOINT 72

2.5.5 长事务的管理 73

2.5.6 XA 74

2.6 事务相关的实战问题讨论 75

2.7 本章小结 76

第二篇 事务管理与并发控制应用实例研究

第3章 Informix事务管理与并发控制 78

3.1 Informix的事务操作 78

3.2 Informix的封锁技术 83

3.3 隔离级别与数据异常 85

3.4 本章小结 88

第4章 PostgreSQL事务管理与并发控制 89

4.1 PostgreSQL事务操作 89

4.2 SQL操作与锁 92

4.3 隔离级别与数据异常 108

4.4 本章小结 118

第5章 InnoDB事务管理与并发控制 119

5.1 InnoDB的事务模型 119

5.2 InnoDB基于锁的并发控制 123

5.3 InnoDB基于MVCC的并发控制 130

5.4 隔离级别与数据异常 131

5.5 本章小结 138

第6章 Oracle事务管理与并发控制 139

6.1 Oracle的事务操作 139

6.2 Oracle的封锁技术 142

6.3 MVCC技术 145

6.4 隔离级别与数据异常 157

6.5 本章小结 160

第三篇 PostgreSQL事务管理与并发控制源码分析

第7章 PostgreSQL事务系统的实现 162

7.1 架构概述 162

7.2 事务管理的基础 166

7.3 事务操作 173

7.4 子事务的管理 186

7.5 本章小结 188

第8章 PostgreSQL并发控制系统的实现—封锁 189

8.1 锁的概述 189

8.2 系统锁 192

8.3 事务锁 214

8.4 事务锁的管理 239

8.5 死锁检测 247

8.6 从锁的角度看用法 254

8.7 本章小结 262

第9章 PostgreSQL并发控制系统的实现—MVCC 263

9.1 快照 264

9.2 可见性判断与多版本 273

9.3 可串行化快照原理 285

9.4 PostgreSQL可串行化快照的实现 289

9.5 隔离级别 336

9.6 本章小结 340

第四篇 InnoDB事务管理与并发控制源码分析

第10章 InnoDB事务系统的实现 342

10.1 架构概述 342

10.2 事务管理的基础 346

10.3 事务操作 353

10.4 InnoDB事务模型 378

10.5 本章小结 382

第11章 InnoDB并发控制系统的实现—两阶段锁 383

11.1 锁的概述 383

11.2 系统锁 386

11.3 事务锁之记录锁 401

11.4 事务锁之元数据锁 433

11.5 SQL语义定义锁 476

11.6 其他类型的锁 493

11.7 事务与锁 499

11.8 本章小结 500

第12章 InnoDB并发控制系统的实现—MVCC 502

12.1 数据结构 503

12.2 可见性判断 506

12.3 多版本的实现 509

12.4 一致性读和半一致性读 511

12.5 本章小结 513

附录 TDSQL简介 514

数据库事务处理的艺术 事务管理与并发控制 精彩文摘

1.3事务的模型

事务的实现,在不同的数据库系统中是不同的,这是因为事务有着不同的模型,在JimGray的《事务处理概念与技术》一书的第四章事务模型中,事务被分为:

平板事务(FlatTransactions):事务块中的所有SQL语句,构成一个逻辑单元,要么都成功,要么因之一失败都回滚。PostgreSQL的事务管理如果不考虑保存点(Savepoint)机制,可以认为就是一个平板类型的事务,事务块内的一个SQL失败,导致整个事务必须回滚,之前执行成功的操作也必须回滚掉。

带有保存点的平板事务(FlatTransactionsWithSavepoints):在平板事务的基础上,实现了保存点技术,这样使得一个事务块,可以划分出不同的层次,每个层次之间为一个逻辑单元,后面失败的SQL不影响之前保存点前发生的操作,即回滚发生在局部。PostgreSQL、InnoDB、Informix在平板事务的基础上,支持了保存点技术。

链式事务(ChainedTransactions):与平板事务不同的是,链式事务在提交一个事务后,释放一些资源如锁等资源,但是,一些上下文环境如事务的载体(存放事务信息的结构体或类等对象)不被释放,会留给下一个事务使用。用户感觉门己的逻辑上的处理单元与之前的事务似乎没有COMMIT之类命令执行的明显分割。如InnoDB的事务模型,就是链式事务的代表(这句话不是说InnoDB不支持平板事务,实际上InnoDB支持平板事务、支持带有保存点的平板事务、支持链式事务,并通过XA技术支持下面谈到的分布式事务)。

本文来自怪你过分美丽投稿,不代表电子书资源网立场,如若转载,请联系原作者获取。

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 02-13
下一篇 02-13

相关推荐

  • 自己动手实现Lua 虚拟机 编译器和标准库pdf下载

    2022年3月11日22:21:32评论2 自己动手实现Lua 虚拟机 编译器和标准库 作者:张秀宏自己动手实现Lua 虚拟机 编译器和标准库 出版社:机械工业出版社自己动手实现Lua 虚拟机 编译器和标准库 内容简介本书是一本面向Lua程序员和脚本语言爱好者的语言自制指南和实战宝典。作者融

    2023-02-19 23:56:02
    180 0
  • 机械测量技术pdf下载

    机械测量技术 作者:赵贤民机械测量技术 出版社:机械工业出版社机械测量技术 内容简介《机械测量技术》是根据中职机械类、近机械类各专业使用各种工量具进行产品检测的基本要求编写而成的。《机械测量技术》共有测量技术基础知识、常用测量器具、尺寸公差及其检测、几何公差

    2023-02-14 09:37:01
    555 0
  • Spring Cloud微服务 全栈技术与案例解析pdf下载

    摘要适读人群 :本书的读者对象主要是Java开发人员:特别是工作1到3年这种工作经验的开发人员,这个阶段的开发人员技术能力一般,正需要一些实用的技术和经验来提升自己,Spring Cloud正是 (1)作者是Java工程师,在Spring Cloud微服务方面积累了丰富的经验 (2)知识体系全

    2023-02-14 07:37:02
    869 0
  • 基于深度学习的自然语言处理pdf下载

    基于深度学习的自然语言处理 作者:(以色列)约阿夫戈尔德贝格(Yoav Goldberg)基于深度学习的自然语言处理 出版社:机械工业出版社基于深度学习的自然语言处理 内容简介自然语言处理是人工智能领域的一个重要的研究方向,是计算机科学与语言学的交叉学科。随着互联网的快速

    2023-02-14 06:26:01
    746 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信