一句话:提出CoRAL,通过受限恢复与局部一致快照,使分布式异步图处理从故障中更快恢复并降低网络峰值带宽。
现有分布式异步图处理系统采用检查点保存全局一致快照,故障时将所有机器回滚到最近检查点。本文指出,由于异步执行语义较为宽松,恢复并不需要将整个执行状态回滚到全局一致状态。作者定义了恢复状态可用于正确异步处理所需满足的性质,并提出 CoRAL:一种轻量级检查点与恢复算法。CoRAL 实现受限恢复,仅回滚失败机器的图执行状态;同时使用轻量级检查点捕获局部一致快照,降低保存快照所需的峰值网络带宽。在真实图上的实验表明,在16机集群中1至6台机器发生故障时,CoRAL 比传统异步检查点与恢复机制快1.5倍至3.2倍完成处理;维护1至6个快照副本时,99百分位带宽平均降低22%至51%。
Existing distributed asynchronous graph processing systems employ checkpointing to capture globally consistent snapshots and rollback all machines to most recent checkpoint to recover from machine failures. In this paper we argue that recovery in distributed asynchronous graph processing does not require the entire execution state to be rolled back to a globally consistent state due to the relaxed asynchronous execution semantics. We define the properties required in the recovered state for it to be usable for correct asynchronous processing and develop CoRAL, a lightweight checkpointing and recovery algorithm. First, this algorithm carries out confined recovery that only rolls back graph execution states of the failed machines to affect recovery. Second, it relies upon lightweight checkpoints that capture locally consistent snapshots with a reduced peak network bandwidth requirement. Our experiments using real-world graphs show that our technique recovers from failures and finishes processing 1.5x to 3.2x faster compared to the traditional asynchronous checkpointing and recovery mechanism when failures impact 1 to 6 machines of a 16 machine cluster. Moreover, capturing locally consistent snapshots significantly reduces intermittent high peak bandwidth usage required to save the snapshots -- the average reduction in 99th percentile bandwidth ranges from 22% to 51% while 1 to 6 snapshot replicas are being maintained.