Network Coding for Distributed Storage Systems

distributed storage system

EC requires less redundancy than simple replication.

However, since segments must be replaced periodically when nodes fail, a key question is how to generate encoded segments in a distributed fashion while transmitting as little data as possible over the network.

For erasure coding systems, a common practice to recover from a single node failure is to have the new node reconstruct the entire encoded data object to generate only one encoded block.

We show that this procedure is suboptimal. We introduce the concept of regenerating code, which allows new nodes to communicate stored data functionality with surviving nodes. We demonstrate that regenerating code can significantly reduce repair bandwidth. Furthermore, we show that there is a fundamental trade-off between storage bandwidth and repair bandwidth, which we theoretically characterize using flow parameters on appropriately constructed graphs. By invoking constructive consequences in network coding, we introduce regenerative codes that can achieve any point in this optimal tradeoff.

 

Guess you like

Origin blog.csdn.net/weixin_41523437/article/details/107844357