Optimization of recovery bandwidth utilization in erasure code storage systems

In the erasure code storage systems, failure is very common, so a great amount of data needs to be recovered in the system. For each recovery task, we need to select some nodes from the nodes of a stripe to read data to recover the failed data. However, due to the limitation of the bandwidth of each node, the number of simultaneous recovery tasks is limited, and the inappropriate task selection causes the waste of bandwidth, resulting in slow recovery. This paper proposes two greedy approaches Gre-N and Gre-T to solve the above problems. Gre-N assigns tasks to nodes with high bandwidth first. Gre-T sorts tasks in weighted order. The node with the lowest bandwidth utilization is selected each time to avoid the bandwidth exhaustion of a large number of nodes. In addition, the bandwidth utilization of the system is balanced by the low bandwidth node compensation policy. According to the experimental results, compared with the original approach, Gre-N and Gre-T increase the bandwidth utilization by up to 20.2% and 29.7%.