18143453325 在线咨询 在线咨询
18143453325 在线咨询
所在位置: 首页 > 营销资讯 > 信息时代 > 分布式可靠性(数据库)

分布式可靠性(数据库)

时间:2022-12-19 22:30:01 | 来源:信息时代

时间:2022-12-19 22:30:01 来源:信息时代

    分布式可靠性 : 研究分布式数据库的故障恢复问题,并为此提出的分布式数据库的恢复方法。数据库恢复是保证数据库系统满足各种应用不可缺少的重要组成部分。尽管计算机系统可靠性在不断提高,数据库系统中也采用了很多措施和方法来保证数据库系统的正常运行,但系统仍不可避免地会出现这样或那样的故障,导致数据库中数据丢失或被破坏。因此,数据库系统必须采取相应的恢复措施,把数据库系统从故障状态恢复到一致性的正确状态。
1.分布式数据库系统中的故障
分布式数据库系统主要由场地及场地间的通信链路组成。因此,在分布式数据库系统中,除了会发生集中式数据库系统中的故障外,还会发生分布式数据库系统特有的故障,如: 通信链路故障等。根据分布式数据库特点,其故障类型可归纳为:
(1)事务故障: 主要由系统单个事务或系统死锁引起的,使事务被废弃。如: 算术溢出、被零除、超时、申请资源过多等。通常一个系统约有3%的事务被异常废弃。这一类故障不会导致存储介质上的数据被破坏,是一种影响性较小的可排除性的局部故障,由系统恢复机制自动恢复或重新启动事务来恢复。
(2)系统(场地)故障: 主要由处理器、主存、电源、系统过载和系统崩溃等造成的,往往涉及多个或全部事务,造成系统局部或系统全部出现故障。这类故障使主存的内容丢失,但外存的内容是安全的。
(3)介质故障: 是由外存设备故障引起的,如:磁头坏、驱动卡坏、扇区坏等。这类故障对数据库系统是致命的,导致外存数据部分或全部丢失。
(4)通信故障: 主要指报文丢失和网络分割这两种故障。报文丢失指在传送过程中由于报文丢失而导致的数据错误。网络分割指系统的一个场地与另一场地失去联系,使两场地间无法通信。
若存在两个结点A和B,报文丢失指A最大延迟内没有收到B发来的报文。网络分割指网络被断开或存在两个以上不相连接的子网。如果系统不存在通信故障,则表现出如下情况: ①收到的报文内容及报文顺序均正确; ②无超时错误发生。无超时错误指在发送报文后,在规定的延迟时间内应收到返回的应答信息。另外,除网络分割可能造成报文丢失外,场地故障也可造成报文丢失。
2.具有恢复功能的两段提交协议
两段提交(two-phase-commitment,2PC)协议是将事务提交分两个阶段: 决定阶段和执行阶段。决定阶段是做出提交/废弃的决定:执行阶段实现决定阶段的决定。2PC协议具有恢复场地故障和通信故障的特性。
(1)场地故障恢复: 图1描述了基于2PC协议实现场地故障恢复的过程。其中,C为协调者(coordinator); P为参与者(participants); P为预提交命令(prepare);C/A为提交/废弃命令(commit/abort);ack为应答;R/A为准备提交/准备废弃(ready/abort)。具体场地故障分析如下: ①故障在参与者场地,参与者在写R/A记录之前出错。此时,协调者发完prepare命令后在规定时间内收不到应答信息。恢复:协调者发现超时,做abort处理,即缺省认为收到abort应答。②故障在参与者场地,参与者在写R/A记录之后,写A/C记录之前出错。恢复: 故障场地重新启动,向协调者或其他场地重新请求命令(A/C)。③故障在协调者场地,协调者在写P记录之后,写A/C记录之前出错。恢复: 协调者重新启动后,重新执行2PC协议。④故障在协调者场地,协调者在写C/A记录之后,写complete记录之前出错。恢复: 没收到命令的参与者保持等待,协调者重新启动后,给所有参与者重发其决定的命令。


图1 2PC协议实现的概要图


(2)通信故障恢复: 通信故障分报文丢失和网络分割两种。通信故障的直观表现是造成传输信息的丢失。丢失的信息可分为命令信息、响应信息及数据库信息。当命令或响应信息丢失时,直接影响事务的实现。
(3)报文丢失故障恢复: 根据丢失的报文信息类型(见图2),有下面几种情况:①丢失P命令报文:协调者保持等待,发现超时,作abort处理,即缺省收到abort废弃响应;②丢失R/A响应报文:同“丢失P命令报文”处理,即协调者保持等待,发现超时,作abort处理; ③丢失C/A命令报文: 参与者利用超时机制,要求协调者重发C/A命令: ④丢失ACK响应报文:协调者利用超时机制,向参与者重发C/A命令,要求参与者给予应答。


图2 2PC协议中报文信息传输概要图


(4)网络分割故障恢复: 在网络分割故障中,采用的故障恢复思想是: 先将网络中所有场地结点分为两大区,包含协调者的分区和不包含协调者的分区。包含协调者的分区称协调者群; 不包含协调者的分区称参与者群。之后,分两种情况进行恢复处理: ①在协调者群中,若认为参与者群出故障,则故障恢复同场地故障的①和②;②在参与者群中,若认为协调者群出故障,则故障恢复同场地故障的③和④。

74
73
25
news

版权所有© 亿企邦 1997-2022 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭