首页 - 网校 - 万题库 - 直播 - 雄鹰网校 - 团购 - 书城 - 模考 - 学习通 - 导航 -
首页网校万题库直播雄鹰网校团购书城模考论坛实用文档作文大全宝宝起名
2015中考
法律硕士
2015高考
MBA考试
2015考研
MPA考试
在职研
中科院
考研培训
专升本
自学考试 成人高考
四 六 级
GRE考试
攻硕英语
零起点日语
职称英语
口译笔译
申硕英语
零起点韩语
商务英语
日语等级
GMAT考试
公共英语
职称日语
新概念英语
专四专八
博思考试
零起点英语
托福考试
托业考试
零起点法语
雅思考试
成人英语三级
零起点德语
等级考试
华为认证
水平考试
Java认证
职称计算机 微软认证 思科认证 Oracle认证 Linux认证
公 务 员
导游考试
物 流 师
出版资格
单 证 员
报 关 员
外 销 员
价格鉴证
网络编辑
驾 驶 员
报检员
法律顾问
管理咨询
企业培训
社会工作者
银行从业
教师资格
营养师
保险从业
普 通 话
证券从业
跟 单 员
秘书资格
电子商务
期货考试
国际商务
心理咨询
营 销 师
司法考试
国际货运代理人
人力资源管理师
广告师职业水平
卫生资格 执业医师 执业药师 执业护士
会计从业资格
基金从业资格
统计从业资格
经济师
精算师
统计师
会计职称
法律顾问
ACCA考试
初级会计职称
资产评估师
高级经济师
注册会计师
高级会计师
美国注册会计师
审计师考试
国际内审师
注册税务师
理财规划师
一级建造师
安全工程师
设备监理师
公路监理师
公路造价师
二级建造师
招标师考试
物业管理师
电气工程师
建筑师考试
造价工程师
注册测绘师
质量工程师
岩土工程师
注册给排水
造价员考试
注册计量师
环保工程师
化工工程师
暖通工程师
咨询工程师
结构工程师
城市规划师
材料员考试
消防工程师
监理工程师
房地产估价
土地估价师
安全评价师
房地产经纪人
投资项目管理师
环境影响评价师
土地登记代理人
宝宝起名
缤纷校园
实用文档
入党申请
英语学习
思想汇报
作文大全
工作总结
求职招聘 论文下载 直播课堂
您现在的位置: 考试吧 > 计算机等级考试 > 计算机四级考试 > 复习资料 > 数据库工程师 > 正文

2015计算机等级考试四级数据库工程师复习(9)

来源:考试吧 2015-02-10 16:33:16 考试吧:中国教育培训第一门户 模拟考场
考试吧整理了“2015计算机等级考试四级数据库工程师复习”,提供给各位考生备考,更多考试资料请持续关注考试吧计算机等级考试频道!

  点击查看:2015计算机等级考试四级数据库工程师复习汇总

  第9章 事务调度与并发控制

  9.1事务与事务调度

  9.1.1 事务的概念

  1、 事务是构成数据库应用中一个独立逻辑工作单元的操作的集合,也是访问并可能更新数据库中各种数据项的一个程序执行单元。数据库系统通过执行各种事务实现对数据库数据的操作,管理和执行事务是DBMS的基本功能。

  9.1.2 事务的特性(ACID特性)

  1、原子性(Atomicity)

  一个事务对数据库的所有操作是一个不可分割的工作单元,这些操作要么全部执行,要么一个也不执行。

  2、 一致性(Consistency)

  当一个事务独立执行时,其执行结果应维护数据库的一致性,即数据库不会因事务执行而受到破坏。数据库满足全部完整性约束,处于正确的状态;

  3、 隔离性(Isolation)

  当多个事务并发执行时,系统应保证一个事务的执行结果不受其他事务的干扰,事务并发执行结果与这些事务串行执行时的结果是一样的;

  4、 持久性(Durability)

  一个事务一旦成功完成全部操作,则它对数据库的所有更新就永久地反映在数据库中,即使以后数据库发生了故障;

  9.1.3 事务调度

  1、 一个事务中各操作的执行顺序和执行时机一方面取决于事务自身内部逻辑,另一方面也受DBMS中事务调度机制的控制。当多个事务并发执行时,DBMS必须采用合适的并发调度机制合理安排各个事务执行顺序,以保证事务的ACID特性。

  2、 调度分为串行调度和并发调度,串行调度的特点是一个事务的所有操作都执行完后才开始执行另一事务,不存在事务操作的交叉执行;不同事务操作的交叉执行称为并发调度,DBMS交叉执行来自多个事务的各个操作,以提高数据库系统的性能。

  9.1.4 可串行化调度

  1、 事务的串行调度能够产生正确的结果,但执行效率低,如果并发调度S等价于某一定义在TS上的串行调度,那么S称为可串行化调度;

  2、 给定两个定义在事务集TS上的的调度S和S’,如果可以通过交换S中一系列非冲突操作的执行顺序将S转换为S’,则称S与S’是冲突等价。

  3、 如果定义在事务TS上的并发调度S冲突等价于事务集TS上的某个串行调度S’,则称S是冲突可串行的。

  4、 在引入冲突可串行概念后,判断一个并发调度是否正确可以归结为判断该调度是否冲突可串行的。

  9.2 基于锁的并发控制技术

  9.2.1 锁的概念

  1、 对数据库系统中每个可能被多个事务并发访问的数据项设置锁,锁代表了对该数据项的访问权限。即事务T在访问数据项Q前须向DBMS申请获得设置在Q上的锁,如成功,则T获得对Q的访问权,T对Q操作完成后,释放所占用的锁,允许其他事务获得该锁并访问Q,在T释放设置在Q上的锁前,其他事务不能访问Q。

  2、 锁的类型有两种:

  (1) 互斥锁(X锁):若T获得Q上的X锁,则T可以对Q读写,其他事务不能再对Q进行任何操作,直到T释放Q上的锁;

  (2) 共享锁(S锁):若T获得Q上的S锁,则T可以对Q进行读取操作,但不可以修改,同时,允许其他事务再申请获得Q上的S锁,与T并行读取Q,但在T释放Q上的S锁前,其他事务不能对Q做任何修改;

  9.2.2 加锁协议

  1、 保证数据一致性的三级加锁协议:

  (1) 1级加锁协议要求事务T在修改数据项Q之前必须先对Q加X锁,直到事务结束才释放,事务结束包括正常结束和非正常结束,但事务如果只对Q读而不写,则不需对Q加锁;

  (2) 2级加锁协议是在1级加锁协议基础上,要求T在读取Q前必须先对其加S锁,读完后立即释放S锁;

  (3) 3级加锁协议是在1级加锁协议基础上,要求在读取Q前必须先对其加S锁,但需等到事务结束后才释放S锁。

  9.2.3 两阶段锁协议

  1、 两阶段锁(2PL)基本原理如下:

  (1) 每个事务的执行过程划分为两个阶段,加锁阶段和解锁阶段;

  (2) 在加锁阶段,事务可以申请获得任何数据项上的任何类型的锁,但是不允许释放任何锁;

  (3) 在解锁阶段,事务可以释放任何数据上的任何类型的锁,但是不能再申请任何的锁;

  (4) 每个事务开始执行后就进入加锁阶段,当第一次释放锁后,即进入解锁阶段。

  9.2.4 锁粒度

  1、 施加X锁和S锁的数据项大小称为锁粒度。

  2、 锁粒度越大,系统中可以被锁的数据项就越少,事务的并发执行度也越低,但同时系统的开销也小,相反,当锁粒度越小时,事务的并发度高,但系统开销也较大;

  9.3 死锁处理

  9.3.1 死锁预防

  1、 一次加锁法

  该方法要求每个事务在开始时必须将需要访问的数据项全部加锁,否则不能执行下去,也就是要求事务必须一次性地获得对需要访问的全部数据项的访问权;

  该方法的缺点是:

  (1) 多个数据项会被一个事务长期锁定独占,导致其他事务无法及时访问这些数据项,降低了系统的并发程度;

  (2) 由于很难事先精确知道每个事务在执行过程中需要加锁的全部数据项,只能扩大加锁范围,将事务执行时可能访问的所有数据项全部加锁,进一步降低了系统的并发程度;

  2、 顺序加锁法

  该方法对数据库中事务访问的所有数据项规定一个加锁顺序,每个事务在执行过程中必须按此顺序对所需数据加锁;

  该方法的缺点:

  (1) 数据库中需要加锁的数据项非常多,并且不断变化,维护这些数据项的加锁顺序很困难,代价非常大;

  (2) 事务访问的数据项有时无法事先完全确定,有时很难要求事务按照固定的顺序对这些数据项进行加锁;

  9.3.2 死锁检测与恢复

  1、 死锁检测

  (1) 可以利用事务等待图进行死锁检测,数据库系统出现死锁当且仅当事务等待图中包含回路,而且回路中的所有事务就是处于死锁的事务;

  (2) 数据库并发控制子系统动态地构造和维护事务等待图,并周期地检测等待图,如图中有回路,则说明系统中出现了死锁;

  2、死锁恢复

  (1) 当发现死锁存在时,系统可以通过死锁恢复机制将系统从死锁中解救出来,通常是选取一个或几个死锁事务,撤消这些事务,释放其所有的锁,消除事务等待图中的回路,从而解决了系统死锁问题;

  (2) 如果决定撤消哪个事务或哪些事务,有两个原则:

  A、 选择处于最多条回路交点处的事务;

  B、 选择具有最少撤消代价的事务。

  9.4 活锁处理

  1、如果一个事务在系统不存在死锁的情况下,长期得不到DBMS的获批,处于长时间等待中的情况叫活锁,为了避免活锁,DBMS可采用先来先服务的原则解决。

  相关推荐:

  各地2015年计算机等级考试报名时间汇总

  各地2015年上半年计算机等级考试费用汇总

  考试吧特别策划:2015年计算机等级考试报考指南

文章搜索
版权声明:如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。
Copyright © 2004- 考试吧计算机等级考试网 All Rights Reserved 
中国科学院研究生院权威支持(北京)
在线模拟试题
考证通关杀器
考试最新资讯
一次通关技巧