版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、会计学1章分布式数据库中的可靠性章分布式数据库中的可靠性第一页,共87页。1.1 分布式数据库可靠性概念1 分布式数据库可靠性概念及其度量第1页/共87页第二页,共87页。Ready故障(gzhng)出现Site1也Ready故CommitSite 2 等待(dngdi)此时(c sh)Site 2有两种可能:a 以正确性为标准,x2则等待, 并Lock 2, 直到故障恢复。提高了可靠性,但牺牲了可用性。b 引入不一致性的风险下, 尽量提高可用性,解锁x2, 其它事务可以使用它的值。Site 1 正常结束1.1 分布式数据库可靠性概念1 分布式数据库可靠性概念及其度量已知x1和x2是x的副本事
2、务T是更新x的事务Site 1是协调站点Site 1是事务T原发站点遵守两阶段提交协议第2页/共87页第三页,共87页。1.2 平均故障间隔时间和平均修复时间1 分布式数据库可靠性概念及其度量第3页/共87页第四页,共87页。component1component2component3环境(hunjng)系统(xtng)刺激响应系统规范说明(Specification) 系统提供的对所有可能的刺激将产生的响应行为必须遵循的说明2.1 系统失败的原因2 分布式数据库系统的故障原因和容错技术第4页/共87页第五页,共87页。2.1 系统失败的原因2 分布式数据库系统的故障原因和容错技术第5页/共8
3、7页第六页,共87页。软件故障是瞬变性故障2.1 系统失败的原因2 分布式数据库系统的故障原因和容错技术第6页/共87页第七页,共87页。2.1 系统失败的原因2 分布式数据库系统的故障原因和容错技术第7页/共87页第八页,共87页。永久性故障(gzhng)错误(cuw)的设计不稳定或者(huzh)临界的组件不稳定的外部环境操作者的过失系统失败永久性错误间歇性错误瞬变的错误系统失败的原因第8页/共87页第九页,共87页。2.2 基本容错方法和技术2 分布式数据库系统的故障原因和容错技术第9页/共87页第十页,共87页。n平均故障间隔时间(MTBF):在可以自我修复的系统中相继的失败之间的期望时
4、间, 由经验或从可靠性函数计算2.2 基本容错方法和技术2 分布式数据库系统的故障原因和容错技术第10页/共87页第十一页,共87页。 MTBF MTTDMTTR在这段时间内,可能(knng)发生多起错误故障(gzhng)发生造成(zo chn)错误检测到错误修复故障发生造成错误时间 相继发生的事件2.2 基本容错方法和技术2 分布式数据库系统的故障原因和容错技术第11页/共87页第十二页,共87页。2.2 基本容错方法和技术2 分布式数据库系统的故障原因和容错技术第12页/共87页第十三页,共87页。易失存储(cn ch)丢失 稳定(wndng)存储 ok 故障-停止模块 不断地对自身进行检
5、测,当检测到一个故障时,就自动停止。 优点是缩短了故障检测的潜伏期。2.2 基本容错方法和技术2 分布式数据库系统的故障原因和容错技术第13页/共87页第十四页,共87页。2.2 基本容错方法和技术2 分布式数据库系统的故障原因和容错技术第14页/共87页第十五页,共87页。3.1 分布式数据库系统故障3 分布式数据库的可靠性协议站点故障(gzhng)第15页/共87页第十六页,共87页。3.2 局部可靠性协议3 分布式数据库的可靠性协议第16页/共87页第十七页,共87页。数据库缓冲区(易变数据库)局部(jb)恢复管理器数据库缓冲区管理器主存取出,冲洗(chngx)读/写稳定(wndng)D
6、B读/写LRM与缓冲区管理器的接口3.2 局部可靠性协议3 分布式数据库的可靠性协议第17页/共87页第十八页,共87页。旧的稳定DB状态新的稳定DB状态Redo数据库Log新的稳定DB状态旧的稳定DB状态Undo数据库Log3.2 局部可靠性协议3 分布式数据库的可靠性协议第18页/共87页第十九页,共87页。3.2 局部可靠性协议3 分布式数据库的可靠性协议第19页/共87页第二十页,共87页。3.3 分布式可靠性协议3 分布式数据库的可靠性协议第20页/共87页第二十一页,共87页。3.3 分布式可靠性协议3 分布式数据库的可靠性协议第21页/共87页第二十二页,共87页。3.3 分布式
7、可靠性协议3 分布式数据库的可靠性协议第22页/共87页第二十三页,共87页。3.4 两阶段提交协议的演变3 分布式数据库的可靠性协议第23页/共87页第二十四页,共87页。协调者参与者PREPAREPREPAREDCOMMITACK2PC-提交(tjio)第24页/共87页第二十五页,共87页。协 调 者参 与 者PREPARENOABORTACK2PC-夭折(yozh)第25页/共87页第二十六页,共87页。IWCAIRCAcommit-申请(shnqng) 申请(shnqng)-prepare* no abort* prepared* commit commit ACK 申请(shnqn
8、g)-prepare prepared 申请(shnqng)-prepare no abort ACKF ACK* ACK* 标记: 输入消息 输出消息* = 每一个3.4 两阶段提交协议的演变3 分布式数据库的可靠性协议第26页/共87页第二十七页,共87页。3.4 两阶段提交协议的演变3 分布式数据库的可靠性协议第27页/共87页第二十八页,共87页。3.4 两阶段提交协议的演变3 分布式数据库的可靠性协议第28页/共87页第二十九页,共87页。3.5 事务阻断与终结协议3 分布式数据库的可靠性协议第29页/共87页第三十页,共87页。障(此时,所有参与者站点都是可工作的,参与者可以选举一
9、个新的协调者,然后继续)3.5 事务阻断与终结协议3 分布式数据库的可靠性协议第30页/共87页第三十一页,共87页。3.6 2PC协议的终结协议3 分布式数据库的可靠性协议第31页/共87页第三十二页,共87页。IWCAFcommit-申请(shnqng)申请(shnqng)-prepare*ack*-ack*-_t_abortanyabortanycommit_t_commit_t_abort*noabort*prepared*commit*t=timeout第32页/共87页第三十三页,共87页。IRCA申请(shnqng)-prepareprepared等价于结束(jish)状态_t_
10、 ping申请(shnqng)-preparenocommitackabortackcommitackabortack第33页/共87页第三十四页,共87页。3.6 2PC协议的终结协议3 分布式数据库的可靠性协议第34页/共87页第三十五页,共87页。3.6 2PC协议的终结协议3 分布式数据库的可靠性协议第35页/共87页第三十六页,共87页。3.7 2PC协议的恢复协议3 分布式数据库的可靠性协议第36页/共87页第三十七页,共87页。3.7 2PC协议的恢复协议3 分布式数据库的可靠性协议第37页/共87页第三十八页,共87页。3.8 三阶段提交协议3 分布式数据库的可靠性协议第38页
11、/共87页第三十九页,共87页。一种状态作为缓冲状态, 从而有了3PC协议3.8 三阶段提交协议3 分布式数据库的可靠性协议第39页/共87页第四十页,共87页。IWACcommitpreparevote-abortglobal-abortvote-commitprepare-to-commitIRACpreparevote-commitglobal-abortACKprepare-to-commitready-to-commitpreparevote-abort3PC中事务的状态(zhungti)转换图PCPCready-to-commitglobal-commit global-commi
12、tACK(a) 协调者(b) 参与者第40页/共87页第四十一页,共87页。协调者参与者 PREPAREPREPAREDCOMMITDONE PRECOMMITACK第41页/共87页第四十二页,共87页。协调者参与者 PREPARENOABORTDONE第42页/共87页第四十三页,共87页。协调者参与者开始-3PC 记录(jl)写Log (参与者列表)commit记录(jl)写Log (状态C)prepared记录(jl)写Log (状态 W)committed 记录写Log (状态 C) PREPAREPREPAREDCOMMIT PRECOMMITACK第43页/共87页第四十四页,共
13、87页。协调者参与者初始写begin_commit到日志等待有要求撤消的?写Prepare-to-commit到日志准备提交写end_of_trans.到日志初始准备提交?写ready到日志就绪消息类型?写abort到日志写prepare-to-commit到日志准备提交撤消撤消写abort到日志写abort到日志准备撤消提交全局撤消准备提交ACKACK nono abortPrepare-to-commit写commit到日志提交提交 在 中事务执行的过程 写commit到日志撤消提交准备提交3PC第44页/共87页第四十五页,共87页。者不知参与者是否已执行命令,但是对Commit而言,
14、知道参与者至少在PC状态。因此(ync),协调者不需要做专门的处理3.9 三阶段提交协议的超时处理3 分布式数据库的可靠性协议第45页/共87页第四十六页,共87页。与者已收到“Prepare-to-commit”, 正在等待来自协调者的“全局提交”消息, 处理同第二条。3.9 三阶段提交协议的超时处理3 分布式数据库的可靠性协议第46页/共87页第四十七页,共87页。协调者参与者 PREPAREPREPAREDCOMMIT PRECOMMITACK1. 超时: Abort3. 超时: 忽略(hl)1. 超时: abort2. 超时:终结(zhngji)协议3.超时:终结(zhngji)协议2
15、. 超时: 把参与者移入PC第47页/共87页第四十八页,共87页。3.10 三阶段提交协议的终结协议3 分布式数据库的可靠性协议第48页/共87页第四十九页,共87页。3.10 三阶段提交协议的终结协议3 分布式数据库的可靠性协议第49页/共87页第五十页,共87页。Commit”命令(mng lng).n新协调者在Abort状态:收到第一个消息后,所有参与者进入Abort状态3.10 三阶段提交协议的终结协议3 分布式数据库的可靠性协议第50页/共87页第五十一页,共87页。, , n一个参与者在PC状态故障(gzhng), 必须询问以确定其它参与者如何终结事务3.11 三阶段提交协议的恢
16、复协议3 分布式数据库的可靠性协议第51页/共87页第五十二页,共87页。4.1 网络分割概述4 网络分割与提交协议第52页/共87页第五十三页,共87页。4.1 网络分割概述4 网络分割与提交协议第53页/共87页第五十四页,共87页。结协议n复制控制协议4.1 网络分割概述4 网络分割与提交协议第54页/共87页第五十五页,共87页。n事务在提交前,它必须(bx)获得提交法定票数Vcn事务在Abort前,它必须(bx)获得Abort法定票数VanVa+VcV, 当0 Va, Vc Vni=14.2 基于表决的协议4 网络分割与提交协议第55页/共87页第五十六页,共87页。4.2 基于表决
17、的协议4 网络分割与提交协议第56页/共87页第五十七页,共87页。IWACcommitpreparevote-abortglobal-abortvote-commitprepare-to-commitIRACpreparevote-commitglobal-abortACKprepare-to-commitready-to-commitpreparevote-abort基于法定人数3PC中事务(shw)的状态转换图PCPCready-to-commitglobal-commit global-commitACK(a) 协调者(b) 参与者PAready-to-abortglobal-abor
18、tPAready-to-abortglobal-abort第57页/共87页第五十八页,共87页。4.2 基于表决的协议4 网络分割与提交协议第58页/共87页第五十九页,共87页。4.3 复制控制协议4 网络分割与提交协议第59页/共87页第六十页,共87页。X1X2X3Lockmgr X3Lockmgr X2Lockmgr X1TxiTxjTxk对象(duxing) X 有副本 X1, X2, X34.3 复制控制协议4 网络分割与提交协议第60页/共87页第六十一页,共87页。X1lockmgrX3lockmgrX2lockmgrread第61页/共87页第六十二页,共87页。X1X3X
19、2locklocklockwritewritewrite第62页/共87页第六十三页,共87页。X1X2X3读者(dzh)加锁写者发现冲突!4.3 复制控制协议4 网络分割与提交协议第63页/共87页第六十四页,共87页。. 前就不可获得, 它们(t men)就可能没有注意到T的存在, 以及T对x的更新.n问题n协调者认为不可获得的参与者仍然工作, 并且更新了x , 但是其确认没有到达协调者n站点在事务启动时不可获得, 随后恢复并开始执行事务4.3 复制控制协议4 网络分割与提交协议第64页/共87页第六十五页,共87页。n地适应失效, 包括网络分割.4.3 复制控制协议4 网络分割与提交协议
20、第65页/共87页第六十六页,共87页。同一数据的事务不会同时终结4.3 复制控制协议4 网络分割与提交协议第66页/共87页第六十七页,共87页。的其它副本n刷新参数:定义了刷新事务的调度策略n配置参数:描述站点和网络的特点4.3 复制控制协议4 网络分割与提交协议第67页/共87页第六十八页,共87页。n定期刷新, 在固定时间间隔(jin g)内触发刷新4.3 复制控制协议4 网络分割与提交协议第68页/共87页第六十九页,共87页。n新的信息一致地传播给全部站点5.1 决定网络的状态5 不一致性检测和解决方法第69页/共87页第七十页,共87页。5.1 决定网络的状态5 不一致性检测和解
21、决方法第70页/共87页第七十一页,共87页。5.1 决定网络的状态5 不一致性检测和解决方法第71页/共87页第七十二页,共87页。网络(wnglu)站点K-3UP站点K-2DOWN站点K-1站点KUPDOWN(状态(zhungti)网络(wnglu)上站点的状态站点K控制站点K-3, 即它检查来自K-3的I-am-up报文是否到达,站点K负责发现站点K-1和K-2从不工作到工作的恢复,上图中K-1和K-2不一定是有故障, 它们可能在分割的另一组中,图反映了站点K和K-3的网络视图第72页/共87页第七十三页,共87页。5.1 决定网络的状态5 不一致性检测和解决方法第73页/共87页第七十四页,共87页。5.2 不一致性的检测和解决方法概念5 不一致性检测和解决方法第74页/共87页第七十五页,共87页。5.3 不一致性的检测5 不一致性检测和解决方法第75页/共87页第七十六页,共87页。, 原版本号被置为当前版本号值, 并且, 直到分割修复为止, 此原版号不会改变5.3 不一致性的检测5 不一致性检测和解决方法第76页/共87页第七十七页,共87页。5.3 不一致性的检测5 不一致性检测和解决方法
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度个人住宅装修竣工验收合同7篇
- 二零二五年财务咨询服务合同标的费用与服务内容
- 2025年个人合伙退伙协议书示范文本解读4篇
- 弱电智能化设计合同(2篇)
- 工程结算合同(2篇)
- 2024年中级经济师考试题库附参考答案(夺分金卷)
- 2024年助理会计师《初级会计实务》高频真题库汇编及答案
- 电子控制方向课程设计
- 二零二五年度汽车零部件模具设计合作协议3篇
- 2025年二零二五民办学校教师科研创新聘用协议4篇
- 2024-2025学年山东省潍坊市高一上册1月期末考试数学检测试题(附解析)
- 数学-湖南省新高考教学教研联盟(长郡二十校联盟)2024-2025学年2025届高三上学期第一次预热演练试题和答案
- 2020-2024年安徽省初中学业水平考试中考物理试卷(5年真题+答案解析)
- 部编版5年级语文下册第五单元学历案
- 高考介词练习(附答案)
- 单位就业人员登记表
- 卫生监督协管-医疗机构监督
- 记录片21世纪禁爱指南
- 腰椎间盘的诊断证明书
- 移动商务内容运营(吴洪贵)任务七 裂变传播
- 单级倒立摆系统建模与控制器设计
评论
0/150
提交评论