Page 179 - 《软件学报》2021年第7期
P. 179
张程博 等:面向分布式图计算作业的容错技术研究综述 2097
种不同的基于算法补偿的容错机制,前者更追求对用户透明,减少容错需要耗费的人力成本,而后者则更追求对
难度更高的作业类型的容错支持.同时,后者出现的背景是近年来分布式图计算框架飞速发展,编程模型日益便
利,用户实现分布式图计算作业愈发简单,在此基础上,用户应用程序级的容错机制已经相当简化了,但文献[32]
显示,对于难度较高的作业类型,仍需要用户对图计算作业有深入的理解,需要花费时间编写冗长的容错代码.
Table 4 Comparison of fault tolerance based on algorithmic compensations
表 4 基于算法补偿的容错机制对比
成本 效率 质量
名称 文献 失效恢复 后恢复 可支持的作业 可处理的
性能开销 用户参与度
时间 运行时间 类型(≤) 失效类型(≤)
任意数量的
内置补偿算法容错 [36,37] 零性能开销 对用户透明 显著减少 不确定 近似作业
多点失效
任意数量的
[32] 零性能开销 需要用户深度参与 显著减少 不确定 全局可矫正作业
自定义补偿 多点失效
算法容错 任意数量的
[61] 零性能开销 需要用户深度参与 显著减少 不确定 局部可矫正作业
多点失效
5 未来研究方向展望
作为分布式图计算研究领域中极其重要的一个子领域,面向分布式图计算作业的容错技术近年来得到了
快速的发展,也取得了一定的成果和进展,然而该领域依然有许多亟待解决的问题.本节总结了 3 个未来值得研
究的方向,分别是:分布式图计算作业中故障和失效特征分析、主被动容错协同的作业质量保障机制以及面向
复杂图计算作业的容错技术.
5.1 分布式图计算作业中故障和失效特征分析
目前在面向分布式图计算作业的容错技术的研究领域内,绝大多数工作将分布式图计算作业面临的失效
简单地假设为故障停止失效,并基于该假设做了相当多的容错机制优化工作.但是,随着图数据规模的日益庞
大、图计算作业的运行环境日益复杂,分布式图计算作业中的故障和失效特征必然是极为复杂的,将分布式图
计算作业面临的失效不加分辨地当作是故障停止失效进行处理必然是不合适的,如图 14 所示.
Fig.14 An example of non-fail-stop failure threat in global consistency checkpointing fault tolerance
图 14 非故障停止失效对全局一致检查点容错的威胁示例
在非故障停止失效(non-fail-stop failure)中,基于故障停止失效假设的全局一致检查点容错技术只有当计
算节点在第 X+N 超步崩溃时才会检测到失效,并开始加载最近的来自第 X 超步结束时保存的快照进行失效恢