- 1、本文档共88页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6章_分布式数据库值男的可靠性_
分布式数据库系统及其应用;分布式数据库的可靠性的概念及其度量
分布式数据库系统的故障原因和容错技术
分布式数据库的可靠性协议
网络分割和提交协议
不一致性监测和解决方法
;可靠性
指数据库在一给定时间间隔内不产生任何失败的概率。
它强调数据库的正确性,要求数据库正确运行,既符合某种规格化要求。
通常用来描述不可修复的系统。
可用性
强调的是当需要访问数据库时,它是可用的。
指在给定的时间点系统可以正常运行的概率。
通常用于描述那些可以修复的系统。
两者关系
通常认为构建可用性的系统比可靠性的系统容易
两者是统一的,可靠性高的系统可用性自然是好的
两者又是矛盾的,增加错误风险的情况下,可提高可用性;采用太谨慎的策略会降低可用性
;例: Site1 Site2
x1 x2
Lock x1 Lock x2
2PC
;平均故障间隔时间
指在可以自我修复的系统中相继失败之间的期望时间
通过可靠性函数来计算MTBF=∫0∞R(t)dt
MTBF与系统失败的概率有直接的关系
平均修复时间
是指修复一个系统所需要的期望时间,MTTR
它与失败概率有关
指数型失败和修复的概率的系统可用性
A=MTBF/(MTBF+MTTR)
可用性系统
5个9(99.999%)常用来描述可用性系统
但是可用性系统要求的成本比较高
具体设计时要综合用户两方面的要求
;;故障
任何偏离规范说明的行为
软故障和硬故障
软故障包括间歇性(intermittent)和瞬变性(transient)故障,通过重启动来修复
硬故障指永久性故障, 错误设计等
软件和硬件故障
;软故障 占90%以上并且该比例稳定
67年, 美空军指出计算机中电子故障80%是间歇性的
67年,IBM 指出 90%故障是间歇性的
80年,研究指出软故障明显高于硬故障
87年,Gray指出 大部分软件故障是瞬变性故障;审查不同计算机系统中出错的统计数据
IBM/XA 的OS 可靠性报告 57%是硬件, 12% 软件, 14%操作, 7% 环境(斯坦福 线性加速器SLAC)
Tandem计算机 18%硬件 25% 软件 25%维护 17%操作, 14%环境
ATT 5ESS数字交换机 32.3%硬件, 44.3%软件, 17.5%操作
软件故障
通信或DB的原因是产生软件故障的主要原因.
代码中的Bug, 曾有报告指出, 1000条指令中, 0.25-10个BUG;永久性
故障;容错
设计一种使系统识别出可能会发生的错误的方法。在系统中建立一种机制,使错误在造成系统故障之前就会被检测出来,并能被清除或得到补偿。
错误预防
保证所实现的系统不包含任何错误
错误回避:保证系统不会带入错误的技术(详细的设计方法学和质量控制)
错误清除:清查那些在使用了错误回避技术路线后还残留在系统中的错误,并清除它们(需要大量的测试和证实过程);故障检测
潜伏的故障:故障发生一段时间后才被检测出来
错误潜伏期:从故障发生到被检测出来的时间
平均检测时间(MTTD):平均错误潜伏时间
平均修复时间(MTTR):修复一个失败的系统所需要的期望时间
平均故障间隔时间(MTBF):在可以自我修复的系统中相继的失败之间的期望时间, 由经验或从可靠性函数计算; MTBF ;冗余
所有容错系统设计中都采用的基本原则是在系统的组件中提供冗余
模块化
系统的每个组件都设计为具有定义很好的输入/输出接口的模块
模块化可以把故障隔离在单一的组件中
系统实现
故障-停止模块(fail-stop module)
进程对(Process pairs);
time
正常 停止 恢复 正常;进程对(Process pairs)
通过软件模块的双工来实现容错。两个进程,一个是主进程,一个是备份,它们同时提供同样的服务,主进程与备份进程都是基于故障-停止模块实现。
分类方式(根据主进程和备份进程之间的通信方式)
锁定-步进方式
自动检查点设置方式
状态检查点设置方式
Delta检查点设置方式
持久进程对;事务故障
系统故障
介质故障
通信故障;局部恢复管理器 (LRM)
每个站点一个
维护局部事务的原子性和持久性
体系结构
数据库存储在稳定存储器中
存储和访问稳定数据库的单位是页面
缓冲区中的数据库称作易失数据库
LRM仅仅在易失数据库上执行事务操作
对数据库的访问都要经由数据库缓冲区管理器
Flush(冲洗) 实现将数据库缓冲区页对稳定DB的强迫写;;恢复信息
Log
Un
文档评论(0)