资源描述:
《.doc 关于分布式数据库事务处理机制的探讨》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、关于分布式数据库事务处理机制的探讨第22卷第2期山东科技大学(自然科学版)Vo1.22No.2
2003年6月JournalofUniver~tyofScim0eandTe幽蛔(№衄ral,Science)Jun.2003
文章编号:1672—3767(2003)02—0111—03
关于分布式数据库事务处理机制的探讨
张剑.王炎修.刘倩
(1.山东科技大学信息科学与工程学院,泰安271019;2,枣庄市市中区埭炭总公司,山东枣庄277101;
3.湖南科技大学机械工程及自动化系.湘潭411201)
摘要:讨论了分布式数据库系统中事务恢复的提交协议并对它们的特点进
2、行了分析,重点分析了阻塞
发生的阶段及恢复的策略.
关键词:事务;事务提交协议;阻塞;数据一致性
中图分类号:TP311.133.1文献标识码:A
DiscussionaboutTransactionProcessMechanismin
DitributedDatabaseSystem
ZHANGJian,WANGYan.xiU2,LIUQian3
(1.CollieofInfoScienceandEngg,SUST,Taian271019,CMm;2.ZaozhuangMid-cityBoroughCoalfieldParent
lompang,Zaozhuan
3、g,Shandong277101,China;3.HunanuniversityofscceandTechnology,aI啪411201,cram)
Abstract:Inthispaper,wegiveabriefmtroductionofthetransactionrecoveryprotocol
ofthedistribueddatabasesystemandananalysisoftheprotocolisgiven.Particularly,thephasesinwhich
theblockOCCLlrSandthestrategytodealwith
4、theblockarestudied.
Keywords:transaction;protocoloftransactioncommission;block;dataconsistency
恢复是保证数据库系统满足各种应用的重要
组成部分,分布式数据库系统是地理上分散而逻
辑上集中的数据库系统,通常由计算机网络(局域
网LAN或广域网WAN)联结起来,被联结的逻
辑单位(计算机,外设等硬件和各种软件)称为结
点或站点.尽管计算机系统的性能较之以往有了
很大提高,但仍不能保证绝对不发生故障,尤其是
分布式数据库系统的分布特性决定了它发生故障
的可能性更要高于集中式数
5、据库.在分布式数据
库中各站点上的恢复管理保证自己数据的一致
性,事务管理则负责整个分布事务的数据一致性,
两部分协调好才能保证分布式数据库在发生故障
后能通过恢复保证整个系统的一致性和较好的可
用性.
1传统的分布事务提交协议——二阶段
提交协议(TWOPHASECOMMIT
PRor()(I,)
事务是数据库系统的基本工作单位,是保证
完整性约束和逻辑一致性的单位,事务的执行意
味着把数据库从一个一致性状态转换为下一个一
致性状态,它可由一条操作语句组成,也可由若干
操作语句共同组成,它的结束要么是提交(∞M.
MIT),要么是回退即撤消(AB0lRT),事务
6、必须保
持四个基本性质即:
原子性(atomicity)一致性(consistency)
隔离性(isolation)持续性(durability)
收稿日期:2002—06—25
作者简介:张剑(1978一),男,山东济南人,硕士研究生,从事计算机软件与理论方面的研究.
112山东科技大学(自然科学版)第22卷
在分布式数据库中,事务的执行是分布在各
个分散结点上完成的,而任务的分配对于用户来
说是透明的.通常会有一个结点作为事务的发起
者,它负责将任务分配到各个结点上,其他参与事
务执行的结点我们称为参与者结点,事务的发起
者和参与者遵照一定的协议来进行协调
7、从而保证
数据的一致性.
1.1二阶段提交协议的执行过程
最简单也是最经典的事务处理协议是两阶段
提交协议,它的主要过程如下所示:
(1)事务的发起者向所有的参与者发出消息
请求处理(PREPd)
(2)当参与者收到消息后进行响应,若它决定
接受处理请求,则向发起者回答YES,然后进入
一
种就绪状态(RBY)并等待发起者的回答;若
它不接受处理请求,则回答NO,并撤消本结点上
的子事务
(3)发起者收集所有参与者发来的响应消息,
如果有任一参与者回答NO,则发起者向每一个
参与者发送回退命令,撤消事务,否则若所有参与
者都回答YES,则发起者向每个参与者发送提交
8、
命令(C