Storage codes — Coding rate and repair locality

The repair locality of a distributed storage code is the maximum number of nodes that ever needs to be contacted during the repair of a failed node. Having small repair locality is desirable, since it is proportional to the number of disk accesses during repair. However, recent publications show that small repair locality comes with a penalty in terms of code distance or storage overhead if exact repair is required. Here, we first review some of the main results on storage codes under various repair regimes and discuss the recent work on possible (information-theoretical) trade-offs between repair locality and other code parameters like storage overhead and code distance, under the exact repair regime. Then we present some new information theoretical lower bounds on the storage overhead as a function of the repair locality, valid for all common coding and repair models. In particular, we show that if each of the n nodes in a distributed storage system has storage capacity a and if, at any time, a failed node can be functionally repaired by contacting some set of r nodes (which may depend on the actual state of the system) and downloading an amount β of data from each, then in the extreme cases where α = β or a = r β, the maximal coding rate is at most r/(r + 1) or 1/2, respectively (that is, the excess storage overhead is at least 1/r or 1, respectively).

[1]  A. Dimakis,et al.  Deterministic Regenerating Codes for Distributed Storage Yunnan , 2007 .

[2]  Sriram Vishwanath,et al.  On locality in distributed storage systems , 2012, 2012 IEEE Information Theory Workshop.

[3]  Kenneth W. Shum,et al.  Functional-repair-by-transfer regenerating codes , 2012, 2012 IEEE International Symposium on Information Theory Proceedings.

[4]  Frédérique Oggier,et al.  Self-repairing homomorphic codes for distributed storage systems , 2010, 2011 Proceedings IEEE INFOCOM.

[5]  Cheng Huang,et al.  On the Locality of Codeword Symbols , 2011, IEEE Transactions on Information Theory.

[6]  Kannan Ramchandran,et al.  Interference Alignment in Regenerating Codes for Distributed Storage: Necessity and Code Constructions , 2010, IEEE Transactions on Information Theory.

[7]  Yunnan Wu,et al.  A Survey on Network Codes for Distributed Storage , 2010, Proceedings of the IEEE.

[8]  Kannan Ramchandran,et al.  Fractional repetition codes for repair in distributed storage systems , 2010, 2010 48th Annual Allerton Conference on Communication, Control, and Computing (Allerton).

[9]  Dimitris S. Papailiopoulos,et al.  Simple regenerating codes: Network coding for cloud storage , 2011, 2012 Proceedings IEEE INFOCOM.

[10]  V. Cadambe,et al.  Minimum Repair Bandwidth for Exact Regeneration in Distributed Storage , 2010, 2010 Third IEEE International Workshop on Wireless Network Coding.

[11]  Kannan Ramchandran,et al.  On the Existence of Optimal Exact-Repair MDS Codes for Distributed Storage , 2010, ArXiv.

[12]  Yunnan Wu Existence and construction of capacity-achieving network codes for distributed storage , 2009, 2009 IEEE International Symposium on Information Theory.

[13]  Alexandros G. Dimakis,et al.  Network Coding for Distributed Storage Systems , 2007, IEEE INFOCOM 2007 - 26th IEEE International Conference on Computer Communications.

[14]  Kannan Ramchandran,et al.  DRESS codes for the storage cloud: Simple randomized constructions , 2011, 2011 IEEE International Symposium on Information Theory Proceedings.

[15]  Nihar B. Shah,et al.  Optimal Exact-Regenerating Codes for Distributed Storage at the MSR and MBR Points via a Product-Matrix Construction , 2010, IEEE Transactions on Information Theory.

[16]  Minghua Chen,et al.  Pyramid Codes: Flexible Schemes to Trade Space for Access Efficiency in Reliable Data Storage Systems , 2007, Sixth IEEE International Symposium on Network Computing and Applications (NCA 2007).

[17]  Kannan Ramchandran,et al.  Distributed Storage Codes With Repair-by-Transfer and Nonachievability of Interior Points on the Storage-Bandwidth Tradeoff , 2010, IEEE Transactions on Information Theory.

[18]  Frédérique E. Oggier,et al.  An Overview of Codes Tailor-made for Networked Distributed Data Storage , 2011, ArXiv.

[19]  Cheng Huang,et al.  Erasure Coding in Windows Azure Storage , 2012, USENIX Annual Technical Conference.

[20]  Anne-Marie Kermarrec,et al.  Repairing Multiple Failures with Coordinated and Adaptive Regenerating Codes , 2011, 2011 International Symposium on Networking Coding.

[21]  Kenneth W. Shum,et al.  Cooperative Regenerating Codes , 2012, IEEE Transactions on Information Theory.

[22]  Cheng Huang,et al.  In Search of I/O-Optimal Recovery from Disk Failures , 2011, HotStorage.

[23]  Henk D. L. Hollmann,et al.  On the minimum storage overhead of distributed storage codes with a given repair locality , 2014, 2014 IEEE International Symposium on Information Theory.

[24]  Kannan Ramchandran,et al.  Exact-Repair MDS Code Construction Using Interference Alignment , 2011, IEEE Transactions on Information Theory.

[25]  Kenneth W. Shum Cooperative Regenerating Codes for Distributed Storage Systems , 2011, 2011 IEEE International Conference on Communications (ICC).

[26]  Frédérique E. Oggier,et al.  Self-Repairing Codes for distributed storage — A projective geometric construction , 2011, 2011 IEEE Information Theory Workshop.