分布式数据库中的并发控制.ppt
《分布式数据库中的并发控制.ppt》由会员分享,可在线阅读,更多相关《分布式数据库中的并发控制.ppt(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第五章第五章 分布式数据库中分布式数据库中的并发控制的并发控制5.1并发控制的概念和理论1.并发控制的概念在通常情况下数据库中总是有若干个事务在运行,这些事务可能并发地存取相同的数据,称为事务的并发操作。当数据库中有多个事务并发执行时,系统必须对并发事务之间的相互作用加以控制,这是通过称为并发控制机制来实现的。分布式并发控主要是解决多个分布式事务对数据并发执行的正确性另外,在分布式数据库中,允许数据被复制在多个站点上,当需要对数据执行更新操作时,也必须同时正确地更新它的所有副本。1).丢失更新问题对某个数据项处理上的先后会造成结果的不正确。2).不一致分析问题3).依赖于未提交更新的问题2.事
2、务可串行化理论的基本概念若干个事务并发执行的结果与按希望的顺序执行的结果相同时,称诸事务是可串行的1)分布式事务的一个调度2)串行调度3)可串行化调度3.分布式事务的可串行化理论1)事务2)冲突操作3)并发事务的一个调度4)串行调度5)一致性调度6)两个调度等价7)可串行化调度例5.14.分布式事务的可串行化调度1)使用优先图判别可串行化调度算法5.12)分布式数据库中可串行化理论的扩展例5.23)单副本可串行化4)读一个/写全部副本控制协议5.并发控制机制的常用方法及其分类1)使用协议或规则保证调度是可串行化的(如2PL)2)并发控制机制常用的方法及其分类:封锁方法时标排序的方法混合的方法5
3、.2分布式数据库系统并发控制的封锁技术1.基于封锁的并发控制方法概述:基本思想是事务访问数据项前要对该数据项封锁,如果已被其他事务锁定,就要等等,直到那个事务释放该锁为止.1)锁的粒度,类型和操作A.锁的粒度是指锁定数据项的范围 粒度会影响并发控制和恢复的性能 首先,数据项尺寸越大,允许的并发程度越低 另外,数据项尺寸越小,数据库中项的数理越多B.锁的类型共享锁S,排他锁XC.锁的操作READ_LOCK读封锁WRITE_LOCK写封锁UNLOCK解锁2).封锁准则和锁的转换A.封锁准则事务T在执行任何READ_ITEM操作之前,必须先执行READ_LOCK操作或WRITE_LOCK操作事务T在
4、执行任何WRITE_ITEM操作之前,必须先执行WRITE_LOCK操作如果事务在执行READ_LOCK操作,数据项必须没有加锁或者已经加了读锁,否则事务的这个操作不能执行如果事务执行WRITE_LOCKRK操作,数据项必须没有加锁,否则事务的这个操作不能执行事务执行WRITE_LOCKR操作和WRITE_ITEM操作之后,必须执行UNLOCK操作如果事务已经持有数据项上的一个读锁或者一个写锁,那么它不能再执行READ_LOCK操作.如果事务已经持有数据项上的一个读锁或者一个写锁,那么它不能再执行WRITE_LOCK操作如果事务已经没有持有数据项上的一个读锁或者一个写锁,那么它不能再执行unL
5、OCK操作B.锁的转换在特定条件下,一个已经在数据项上持有锁的事务,允许某种封锁状态转换成另外一种封锁状态.如,一个事务先执行了READ_LOCK操作,然后它可以通过执行WRITE_LOCK操作来升级该锁.3)基本封锁算法分布式比集中式更为复杂:数据的分布导致执行的分布,封锁消息将在整个网络上传输,其通信代价相当大;对多副本的数据,要实现同步更新,原则上就要锁定所有副本.常用的算法有:简单的分布式封锁方法:类似于集中式,数据更新时,要将同一数据的全部副本封锁,然后对其进行更新,更新完成后解除全部上述封锁.主站点封锁法:主站点封锁法模拟集中式,选定一个站点定义为“主站点”,负责系统全部封锁管理,
6、所有站点都有向这个主站点提出封锁和解锁请求,所有封锁和解锁信息都被传送到那个主站点管理和保存,然后由主站点去处理封锁事宜.主副本封锁法:这个方法不指定主站点,而对每个数据项指定一个主副本,不同数据项的主副本被放在不同的站点上快照方法:它是类似于视图一种导出关系,但又与视图不同.它是数据的暂时凝聚,是一种存储方式.2.两阶段封锁协议1)两阶段封锁协议保证调度的可串行化第一阶段是扩张或称成长阶段.在这个阶段中,事务只能获得新的数据项锁,而不能释放任何已持有的锁.第二阶段是收缩或称衰退阶段.在这个阶段中,事务只能释放已经持有的锁.遵守两阶段封锁协议的两个事务T1Read_lock(y);Read_i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分布式 数据库 中的 并发 控制
限制150内