Distributed storage systems ensure data availability through fault-tolerant mechanisms, with erasure coding being widely adopted for its low storage overhead. However, erasure coding generates significant repair traffic during data recovery, which can severely degrade performance. Recent repair algorithms aim to alleviate network bottlenecks at congested nodes, but they mainly focus on downlink bottlenecks, neglecting uplink constraints that fundamentally limit repair efficiency. Moreover, these algorithms lack a systematic approach to handling diverse failure scenarios, complicating the recovery process. In this paper, we propose RAN, an aggregation-based repair algorithm that alleviates both uplink and downlink bottlenecks by optimizing bandwidth utilization across all available nodes and aggregating transfers via programmable network devices. RAN systematically maximizes repair performance across diverse failure scenarios through a unified procedure. We further optimize its scalability and availability, and analyze its theoretical performance and improvements. The system prototype of RAN is implemented and optionally integrated as middleware into HDFS. Experiments on Amazon EC2 show that RAN improves repair throughput by up to 68.9% for degraded read and 266.6% for full-node recovery compared to state-of-the-art algorithms.
Cao et al. (Fri,) studied this question.