登入帳戶  | 訂單查詢  | 購物車/收銀台(0) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入   新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書

『簡體書』数据库事务处理的艺术:事务管理与并发控制

書城自編碼: 3109645
分類:簡體書→大陸圖書→計算機/網絡數據庫
作者: 李海翔等
國際書號(ISBN): 9787111582359
出版社: 机械工业出版社
出版日期: 2017-12-01
版次: 1
頁數/字數: 536/455000
書度/開本: 16开 釘裝: 平装

售價:HK$ 143.6

我要買

share:

** 我創建的書架 **
未登入.


新書推薦:
都铎王朝时期英格兰海事法庭研究
《 都铎王朝时期英格兰海事法庭研究 》

售價:HK$ 87.4
中年成长:突破人生瓶颈的心理自助方案
《 中年成长:突破人生瓶颈的心理自助方案 》

售價:HK$ 65.0
维奥莱塔:一个女人的一生
《 维奥莱塔:一个女人的一生 》

售價:HK$ 76.2
商业银行担保管理实务全指引
《 商业银行担保管理实务全指引 》

售價:HK$ 144.5
信风万里:17世纪耶稣会中国年信研究(全二册)
《 信风万里:17世纪耶稣会中国年信研究(全二册) 》

售價:HK$ 178.1
青铜之美 国宝里的中式美学
《 青铜之美 国宝里的中式美学 》

售價:HK$ 177.0
海外中国研究·朱熹的思维世界(增订版)
《 海外中国研究·朱熹的思维世界(增订版) 》

售價:HK$ 143.4
甲骨文丛书·沙漠之王:英美在中东的霸权之争
《 甲骨文丛书·沙漠之王:英美在中东的霸权之争 》

售價:HK$ 110.9

 

編輯推薦:
(1)作者是腾讯的T4级专家,有近20年数据库内核研发经验,曾是Oracle公司MySQL全球开发组核心成员
(2)中国计算机学会(CCF)常务理事、数据库专委会主任、数据库领域著名专家、中国人民大学杜小勇教授亲自作序推荐
(3)人民大学张孝和卢卫教授、武汉大学彭煜炜教授、云和恩墨CEO盖国强、腾讯金融支付数据库运营与研发部副总监姜承尧联袂推荐
內容簡介:
全书共12章,首先介绍数据库事务管理与并发控制的基础理论和工作机制,然后从工程实践的角度对比和分析了4个主流数据库的事务管理与并发控制的实现原理,后通过源代码分析了PostgreSQL和MySQL在事务管理与并发控制上的技术架构与设计思想。第壹篇(第1章和第2章)对数据库事务管理和并发控制的基础理论、核心技术和工作原理进行了讲解。第二篇(第3~6章)对事务管理和并发控制的实现技术、工作原理以及原理背后的设计思想进行了深度分析和对比。第三篇(第7~9章)对PostgreSQL事务处理技术的架构、层次、设计思想、相关数据结构和实现原理进行了深入系统的分析和讲解。第四篇(第10~12章)对MySQLInnoDB事务处理技术的架构、层次、设计思想、相关数据结构和实现原理进行了深入系统的分析。
關於作者:
高级数据库专家,从事数据库内核的开发与研究15年,对数据库系统原理、MySQL和PostgreSQL等开源数据库的内核有非常深入的研究,对Informix、Oracle和SQL Server等商用数据库也有深入的研究。15年来就职于人大金仓信息技术有限公司、Oracle公司MySQL全球开发组等单位,从事MySQL、 PostgreSQL和Informix数据库内核的开发工作。2014年在我社出版《数据库查询优化器的艺术》一书,获得读者青睐。在MySQL、 PostgreSQL等数据库社区有着很大的影响力,先后多次受邀作为中国数据库技术大会、中国系统架构师大会、Oracle技术嘉年华、MySQL技术嘉年华等大会的嘉宾和专家评委,出席大会做主题分享。
目錄
目录
推荐序一
推荐序二
推荐序三
推荐序四
推荐序五
推荐序六
前言
第一篇 事务管理与并发控制基础理论
第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 子事务与SAVEPOINT72
2.5.5 长事务的管理73
2.5.6 XA74
2.6 事务相关的实战问题讨论75
2.7 本章小结76
第二篇 事务管理与并发控制应用实例研究
第3章 Informix事务管理与并发控制78
3.1 Informix的事务操作78
3.1.1 开始事务78
3.1.2 提交事务79
3.1.3 回滚事务80
3.1.4 XA事务80
3.1.5 事务模型82
3.2 Informix的封锁技术83
3.2.1 锁的级别83
3.2.2 锁的粒度84
3.3 隔离级别与数据异常85
3.3.1 Informix支持的隔离级别85
3.3.2 隔离级别与日志的模式86
3.3.3 写偏序异常87
3.4 本章小结88
第4章 PostgreSQL事务管理与并发控制89
4.1 PostgreSQL事务操作89
4.1.1 开始事务90
4.1.2 提交事务90
4.1.3 回滚事务90
4.1.4 XA事务 91
4.1.5 自动控制事务91
4.2 SQL操作与锁92
4.2.1 锁的研究准备92
4.2.2 INSERT操作触发的锁94
4.2.3 SELECT操作触发的锁94
4.2.4 SELECT FOR UPDATE操作触发的锁97
4.2.5 UPDATE操作触发的锁100
4.2.6 DELETE操作触发的锁103
4.2.7 ANALYZE操作触发的锁106
4.2.8 CREATE INDEX操作触发的锁106
4.2.9 CREATE TRIGGER操作触发的锁107
4.2.10 锁的相关参数108
4.3 隔离级别与数据异常108
4.3.1 SQL标准定义的三种读异常108
4.3.2 写偏序异常115
4.4 本章小结118
第5章 InnoDB事务管理与并发控制119
5.1 InnoDB的事务模型119
5.1.1 开始事务120
5.1.2 提交事务与回滚事务121
5.1.3 MySQL的XA122
5.2 InnoDB基于锁的并发控制123
5.2.1 基于封锁技术实现基本的并发控制123
5.2.2 锁的种类124
5.2.3 锁的施加规则127
5.2.4 获取InnoDB行锁争用情况129
5.2.5 死锁129
5.3 InnoDB基于MVCC的并发控制130
5.4 隔离级别与数据异常131
5.4.1 SQL标准定义的三种读异常131
5.4.2 写偏序异常134
5.5 本章小结138
第6章 Oracle事务管理与并发控制139
6.1 Oracle的事务操作139
6.1.1 事务管理139
6.1.2 事务属性和隔离级别140
6.1.3 XA事务141
6.2 Oracle的封锁技术142
6.2.1 元数据锁的级别142
6.2.2 用户数据锁的级别143
6.3 MVCC技术145
6.3.1 MVCC的历史145
6.3.2 深入理解MVCC 147
6.3.3 Oracle的MVCC149
6.4 隔离级别与数据异常157
6.4.1 Oracle支持的隔离级别157
6.4.2 写偏序异常158
6.5 本章小结160
第三篇 PostgreSQL事务管理与并发控制源码分析
第7章 PostgreSQL事务系统的实现162
7.1 架构概述162
7.1.1 事务和并发控制相关的文件162
7.1.2 事务相关的整体架构164
7.2 事务管理的基础166
7.2.1 事务状态166
7.2.2 事务体171
7.2.3 事务运行的简略过程172
7.3 事务操作173
7.3.1 开始事务173
7.3.2 事务提交177
7.3.3 日志落盘179
7.3.4 事务回滚180
7.3.5 clog185
7.4 子事务的管理186
7.4.1 子事务与父事务的区别186
7.4.2 保存点187
7.5 本章小结188
第8章 PostgreSQL并发控制系统的实现—封锁189
8.1 锁的概述189
8.1.1 锁操作的本质189
8.1.2 与锁相关的文件190
8.1.3 与锁相关的内存初始化191
8.2 系统锁192
8.2.1 SpinLock192
8.2.2 LWLock198
8.2.3 SpinLock与LWLock比较213
8.3 事
內容試閱
前言为什么写这本书关系数据库管理系统有两大核心技术,一是事务处理,二是查询优化。对于数据库技术从业者来说,如果能把这两种技术珠联璧合融于一体,则如同长出两只翅膀,能助君振翅高飞、翱翔万里。
2017年,笔者的第二本著述即将问世。本书是一本讨论数据库事务管理和并发控制技术的书,融合了事务管理和并发控制原理、主流数据库的事务实现、开源数据库内核事务处理和并发控制源码剖析。本书能够帮助技术爱好者掌握事务处理的核心技术—事务管理和并发访问控制。
笔者期望,把自己对技术的深度探索以文字形式分享给读者,与数据库技术爱好者一起享受数据库内核技术之美。于是工作之余,周末枯坐敲击键盘,夜晚遐想苦思代码,便有了这本小作。
什么是艺术书名冠以艺术一词,笔者实不敢当。艺术之大,笔者仰望如高山、如皓日。
惴惴之际,笔者试对艺术做一注解,谬误之词,请读者见谅。
艺术,美也; 工程技术,美之实现也。数据库的工程实现,有美其中。代码有形之体美,算法有神之韵美,数据库内核之大之复杂故有极深的逻辑之美。爱美之心,笔者如同万千生灵,亦有之。于是因爱美而去尝试展示数据库之美,才有了笔者第一著述《数据库查询优化的艺术》和第二本著述《数据库事务处理的艺术》。
本书的主要内容本书主要讨论的内容包含四个话题:
话题一:事务处理技术中的一致性和隔离性,即ACID技术中的C和I。
话题二:对于一致性,本书主要从事务模型和并发控制的角度出发进行讨论,着手于原理怎样保障正确性、主流数据库怎样实现各种并发控制技术等进行探讨。比如封锁控制技术等。
话题三:对于隔离性,本书以并发控制技术为出发点,在明确数据库的一致性之后,从数据库性能的角度出发讨论数据库隔离性的实现技术。比如著名的MVCC技术。
话题四:从工程实践的角度,讨论Informix、Oracle、PostgreSQL和MySQL是怎样实现一致性和隔离性的。
本书共分四篇,四个话题贯穿始终,分别从原理(第一篇)、主流数据库实现(第二篇)、源码级实现(第三、四篇)这三个角度进行了深度讨论。
其中,原理是灵魂,是统领工程实现的纲,对于事务处理,就是要确保怎样保障数据的一致性。所以本书的第一篇,就从数据异常现象这个引子出发,对并发控制技术的原理进行讲述,并分析了多种并发控制技术是怎样解决数据异常现象的。这有别于经典的数据库理论书籍,本书不单纯为讲理论而讲原理,而是结合原理和工程实践中的知识和关键点讲原理,使得原理在工程实践中有落脚点、有着力之处。这是第一篇内容的价值所在。
尽管原理相同,但是不同的数据库的工程实现却是不同的。所以在第二篇,笔者选取了主流的数据库系统,包括Informix、Oracle、PostgreSQL和MySQL,对它们的一致性和隔离性的实现技术,以及工程实现的背后、折射的原理思想进行了深度探索、对比。以期帮助读者对事务管理和并发控制技术的原理有进一步的认识,对主流数据库的相关实现情况有全面的掌握,更期望读者通过阅读能把握主流数据库基于相同原理却又有着不同实现的在工程设计方面的不同考量之处。
最能帮助掌握核心技术的,只有源码。本书第三篇揭示了PostgreSQL的事务处理的技术之美;第四篇揭示了MySQL和InnoDB的事务处理的技术之美。而全书中,似在不经意间,在山石小径旁,长满了对原理、对工程实现的比较,以展示美与美的不同。如果读者能够在读书之际,自己再多做比较,则会领悟到更多的美……本书的主要特色从工程实践的角度看,本书通过原理分析、实例分析、代码分析,进行了三个对比:
理论对比:对比事务处理中各种并发控制技术等的异同,以扩展读者对事务处理技术理解的深度。并发控制的技术有很多,本书不为单纯讲每一个技术而罗列算法本身的内容,而是着眼于对各种算法的差异进行对比,以揭示不同算法背后的思想。
实现对比:对比四大主流数据库的事务处理技术的异同,以扩展读者对事务处理技术理解的广度。本书不单纯讲述各主流数据库事务相关的SQL语法,而是着力于透视事务处理和并发控制技术实现的方式之背后的设计考虑点,并随时对比各个主流数据库对于同一个问题的不同实现方式,以展示工程技术之美。
源码对比:依托代码,直接分析,对比PostgreSQL和MySQL(InnoDB)的事务处理技术的异同,以帮助读者能够结合事务处理技术的原理和工程实践,真正理解、掌握数据库事务处理的技术。只有深入到代码一层,才不会有雾里看花的感觉,置身于代码里,能美在其中、乐在其中。
本书面向的主要读者您想深入了解数据库技术?本书适合您。
您想深入掌握数据库事务处理技术?本书适合您。
您想成为数据库内核技术的开发者?本书适合您。
您想成为数据库核心技术之美的欣赏者、品味者、把握者……本书确实适合您。
资源及勘误由于笔者的水平有限,书中难免会有笔误、差错或遗漏等,希望广大读者能把发现的错误反馈给笔者,笔者将不胜感谢。本书的进步和完善,有您的帮助和爱护,定能再上层楼。您可以发送电子邮件到:databas

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.