2分布式数据库系统的故障原因和容错技术 22基本容错方法和技术 容错 设计一种使系统识别出可能会发生的错误的方法 在系统中建立一种机制,使错误在造成系统故障之 前就会被检测出来,并能被清除或得到补偿。 错误预防 保证所实现的系统不包含任何错误 错误回避:保证系统不会带入错误的技术(详细的 设计方法学和质量控制) 错误清除:清查那些在使用了错误回避技术路线后 还残留在系统中的错误,并清除它们(需要大量的 测试和证实过程)
• 容错 – 设计一种使系统识别出可能会发生的错误的方法。 在系统中建立一种机制,使错误在造成系统故障之 前就会被检测出来,并能被清除或得到补偿。 • 错误预防 – 保证所实现的系统不包含任何错误 – 错误回避:保证系统不会带入错误的技术(详细的 设计方法学和质量控制) – 错误清除:清查那些在使用了错误回避技术路线后 还残留在系统中的错误,并清除它们(需要大量的 测试和证实过程) 2.2 基本容错方法和技术 2 分布式数据库系统的故障原因和容错技术
2分布式数据库系统的故障原因和容错技术 22基本容错方法和技术 故障检测 潜伏的故障:故障发生一段时间后才被检测出 来 错误潜伏期:从故障发生到被检测出来的时间 平均检测时间(MITD):平均错误潜伏时间 平均修复时间(MTTR):修复一个失败的系统所 需要的期望时间 平均故障间隔时间(MTBF):在可以自我修复的 系统中相继的失败之间的期望时间,由经验或 从可靠性函数计算
• 故障检测 – 潜伏的故障:故障发生一段时间后才被检测出 来 – 错误潜伏期:从故障发生到被检测出来的时间 – 平均检测时间(MTTD):平均错误潜伏时间 – 平均修复时间(MTTR):修复一个失败的系统所 需要的期望时间 – 平均故障间隔时间(MTBF):在可以自我修复的 系统中相继的失败之间的期望时间, 由经验或 从可靠性函数计算 2.2 基本容错方法和技术 2 分布式数据库系统的故障原因和容错技术
2分布式数据库系统的故障原因和容错技术 22基本容错方法和技术 MTBE MTTD MTTR 时间 故障造成 检测到 修复 故障造成 发生错误 错误 发生错误 在这段时间内 可能发生多起错误 相继发生的事件
MTBF MTTD MTTR 在这段时间内, 可能发生多起错误 故障 发生 造成 错误 检测到 错误 修复 故障 发生 造成 错误 时间 相继发生的事件 2.2 基本容错方法和技术 2 分布式数据库系统的故障原因和容错技术
2分布式数据库系统的故障原因和容错技术 22基本容错方法和技术 冗余 所有容错系统设计中都采用的基本原则是在系统的 组件中提供冗余 模块化 系统的每个组件都设计为具有定义很好的输入/输出 接口的模块 模块化可以把故障隔离在单一的组件中 系统实现 故障停止模块( fail-stop module) 进程对( Process pairs
• 冗余 – 所有容错系统设计中都采用的基本原则是在系统的 组件中提供冗余 • 模块化 – 系统的每个组件都设计为具有定义很好的输入/输出 接口的模块 – 模块化可以把故障隔离在单一的组件中 • 系统实现 – 故障-停止模块(fail-stop module) – 进程对(Process pairs) 2.2 基本容错方法和技术 2 分布式数据库系统的故障原因和容错技术
2分布式数据库系统的故障原因和容错技术 22基本容错方法和技术 故障-停止模块 不断地对自身进行检测,当检测到一个故障 时,就自动停止。 优点是缩短了故障检测的潜伏期。 Ime 正常停止恢复正常 易失存储丢失稳定存储ok
time 正常 停止 恢复 正常 易失存储丢失 稳定存储 ok • 故障-停止模块 – 不断地对自身进行检测,当检测到一个故障 时,就自动停止。 – 优点是缩短了故障检测的潜伏期。 2.2 基本容错方法和技术 2 分布式数据库系统的故障原因和容错技术