Article Contents
Article Contents

# Linear programming bounds for distributed storage codes

This work was partially supported by a grant from Australian Research Council (DP150103658) and the Research Grants Council of the Hong Kong Special Administrative Region, China under Project CityU 11205318

• A major issue of locally repairable codes is their robustness. If a local repair group is not able to perform the repair process, this will result in increasing the repair cost. Therefore, it is critical for a locally repairable code to have multiple repair groups. In this paper we consider robust locally repairable coding schemes which guarantee that there exist multiple distinct (not necessarily disjoint) alternative local repair groups for any single failure such that the failed node can still be repaired locally even if some of the repair groups are not available. We use linear programming techniques to establish upper bounds on the size of these codes. We also provide two examples of robust locally repairable codes that are optimal regarding our linear programming bound. Furthermore, we address the update efficiency problem of the distributed data storage networks. Any modification on the stored data will result in updating the content of the storage nodes. Therefore, it is essential to minimise the number of nodes which need to be updated by any change in the stored data. We characterise the update-efficient storage code properties and establish the necessary conditions of existence update-efficient locally repairable storage codes.

Mathematics Subject Classification: Primary: 68P20, 94B05, 68P30; Secondary: 90C05.

 Citation:

• Figure 1.  Generator matrix of an update efficient storage code

Figure 2.  Parity check matrix of an update efficient storage code

Figure 3.  A (3, 3, 1, 1) robust locally repairable code of length ${N} = 16$ and dimension ${K} = 9$

Figure 4.  Upper bounds for $(r,3,\Gamma,\zeta)$ binary robust locally repairable code of length $N = 16$

Figure 5.  A robust locally repairable code of length $N = 8$ and dimension $K = 4$ with $\zeta = 7$ repair groups for any failure

Figure 6.  Upper bounds for $(r,3,\Gamma,\zeta)$ binary robust locally repairable code of length $N = 8$

•  [1] A. Agarwal, A. Barg, S. H. Hu, A. Mazumdar and I. Tamo, Combinatorial alphabet-dependent bounds for locally recoverable codes, IEEE Trans. Inf. Theory, 64 (2018), 3481-3492.  doi: 10.1109/TIT.2018.2800042. [2] R. Bhagwan, K. Tati, S. S. Y. Cheng and G. Voelker, Total recall: System support for automated availability management, in Proc. NSDI '04. [3] M. Blaum, J. Brady, J. Bruck and J. Menon, Evenodd: An efficient scheme for tolerating double disk failures in RAID architectures, IEEE Trans. Inf. Theory, 44 (1995), 192-202. [4] M. Blaum, J. Bruck and A. Vardy, MDS array codes with independent parity symbols, IEEE Trans. Inf. Theory, 42 (1996), 529-542. [5] M. Blaum, J. L. Hafner and S. Hetzler, Partial-MDS codes and their application to RAID type of architectures, IEEE Transactions on Information Theory, 59 (2013), 4510-4519.  doi: 10.1109/TIT.2013.2252395. [6] W. J. Bolosky, J. R. Douceur, D. Ely and M. Theimer, Feasibility of a serverless distributed file system deployed on an existing set of desktop PCs, in Proc. of Sigmetrics, 28 (2000), 34–43. doi: 10.1145/339331.339345. [7] V. R. Cadambe and A. Mazumdar, An upper bound on the size of locally recoverable codes, in Proc. Int. Symp. Network Coding (NetCod), Calgary, AB, (2013), 1–5. [8] V. R. Cadambe and A. Mazumdar, Bounds on the size of locally recoverable codes, IEEE Trans. Inf. Theory, 61 (2015), 5787-5794.  doi: 10.1109/TIT.2015.2477406. [9] G. Calis and O. O. Koyluoglu, A general construction for PMDS codes, IEEE Communications Letters, 21 (2017), 452-455. [10] T. H. Chan, M. A. Tebbi and C. W. Sung, Linear programming bounds for storage codes, in 9th International Conference on Information, Communication, and Signal Processing (ICICS 2013), (2013). doi: 10.1109/ICICS.2013.6782924. [11] B. Chen, S.-T. Xia and J. Hao, Locally repairable codes with multiple $(r_i, \delta_i)$-localities, in IEEE Int. Symp. Information Theory (ISIT), Aachen, Germany, (2017), 2038–2042. [12] Y. Chen, J. Edler, A. Goldberg, S. Sobti and P. Yianilos, A prototype implementation of archival intermemory, in DL '99 Proceedings of the Fourth ACM Conference on Digital Libraries, (1999), 28–37. doi: 10.1145/313238.313249. [13] A. G. Dimakis, P. B. Godfrey, Y. Wu, M. J. Wainwright and K. Ramchandran, Network coding for distributed storage systems, IEEE Trans. Inf. Theory, 56 (2010), 4539-4551. [14] P. Druschel and A. Rowstron, Storage management and caching in past, a large-scale, persistent peer-to-peer storage utility, in Proc. of ACM SOSP, (2001). [15] R. Gabrys, E. Yaakobi, M. Blaum and P. H. Siegel, Constructions of partial MDS codes over small fields, in IEEE International Symposium on Information Theory, 65 (2019), 3692–3701. doi: 10.1109/TIT.2018.2890201. [16] P. Gopalan, C. Huang, B. Jenkins and S. Yekhanin, Explicit maximally recoverable codes with locality, IEEE Transactions on Information Theory, 60 (2014), 5245-5256.  doi: 10.1109/TIT.2014.2332338. [17] P. Gopalan, C. Huang, H. Simitci and S. Yekhanin, On the locality of codeword symbols, IEEE Trans. Inf. Theory, 58 (2012), 6925-6934.  doi: 10.1109/TIT.2012.2208937. [18] C. Huang, M. H. Chen and J. Li, Pyramid Codes: Flexible Schemes to Trade Space for Access Efficiency in Reliable Data Storage Systems, Technical Report MSR-TR-2007-25, Microsoft Research, 2007. doi: 10.1145/2435204.2435207. [19] S. Kadhe and A. Sprintson, Codes with unequal locality, in IEEE Int. Symp. Information Theory (ISIT), Barcelona, Spain, (2016), 435–439. doi: 10.1109/ISIT.2016.7541336. [20] S. Kadhe and R. Calderbank, Rate optimal binary linear locally repairable codes with small availability, in IEEE Int. Symp. Information Theory, Aachen, Germany, (2017), 166–170. doi: 10.1109/ISIT.2017.8006511. [21] G. M. Kamath, N. Prakash, V. Lalitha and P. V. Kumar, Codes with local regeneration and erasure correction, IEEE Transactions on Information Theory, 60 (2014), 4637-4660.  doi: 10.1109/TIT.2014.2329872. [22] O. Khan, R. Burns, J. Park and C. Huang, In search of I/O-optimal recovery from disk failures, in Proceedings of the 3rd USENIX Conference on Hot Topics in Storage and File Systems, HotStorage'11, USENIX Association, Berkeley, CA, USA, (2011), 6–6, URL http://dl.acm.org/citation.cfm?id=2002218.2002224. [23] J. Kubiatowicz, D. Bindel, Y. Chen, S. Czerwinski, P. Eaton, D. Geels, R. Gummadi, S. Rhea, H. Weatherspoon, W. Weimer, C. Wells and B. Zhao, OceanStore: An architecture for global-scale persistent storage, in Proc. 9th Int. Conf. Architectural Support Programm. Lang. Oper. Syst., Boston, MA, (2000), 190–201. doi: 10.1145/378993.379239. [24] F. J. Macwilliams and N. J. A. Sloane, The Theory of Error Correcting Codes. I., North-Holland Mathematical Library, Vol. 16. North-Holland Publishing Co., Amsterdam-New York-Oxford, 1977. [25] U. Martnez-Penas and F. R. Kschischang, Universal and dynamic locally repairable codes with maximal recoverability via sum-rank codes, in 2018 56th Annual Allerton Conference on Communication, Control, and Computing (Allerton), IEEE, (2018), 792–799. doi: 10.1109/ALLERTON.2018.8635867. [26] F. Oggier and A. Datta, Self-repairing homomorphic codes for distributed storage systems, in proc. IEEE INFOCOM, (2011), 1251–1223. doi: 10.1109/INFCOM.2011.5934901. [27] L. Pamies-Juarez, H. D. L. Hollmann and F. Oggier, Locally repairable codes with multiple repair alternatives, in IEEE Int. Symp. Information Theory, (2013), 892–896. doi: 10.1109/ISIT.2013.6620355. [28] D. S. Papailiopoulos and A. G. Dimakis, Locally repairable codes, in IEEE Trans. Inform. Theory, 60 (2014), 5843–5855. doi: 10.1109/TIT.2014.2325570. [29] D. S. Papailiopoulos, J. Q. Luo, A. G. Dimakis, C. Huang and J. Li, Simple regenerating codes: Network coding for cloud storage, in proc. IEEE INFOCOM, (2012), 2801–2805. doi: 10.1109/INFCOM.2012.6195703. [30] D. A. Patterson, G. Gibson and R. Katz, A Case for Redundant Arrays of Inexpensive Disks RAID, Tech. Rep. CSD-87-391, Computer Science Division, Department of Electrical Engineering and Computer Science, University of California, Berkeley, CA 94720, 1987. [31] N. Prakash, V. Lalitha and P. V. Kumar, Codes with locality for two erasures, in IEEE Int. Symp. Information Theory (ISIT), (2014), 1962–1966. doi: 10.1109/ISIT.2014.6875176. [32] A. S. Rawat, O. O. Koyluoglu, N. Silberstein and S. Vishwanath, Optimal locally repairable and secure codes for distributed storage systems, IEEE Transactions on Information Theory, 60 (2014), 212-236. [33] A. S. Rawat, A. Mazumdar and S. Vishwanath, On cooperative local repair in distributed storage, in 48th Annual Conference on Information Sciences and Systems (CISS), (2014), 1–5. doi: 10.1109/CISS.2014.6814152. [34] A. S. Rawat, D. S. Papailiopoulos, A. G. Dimakis and S. Vishwanath, Locality and availability in distributed storage, in IEEE Trans. Inform. Theory, 62 (2016), 4481–4493. doi: 10.1109/TIT.2016.2524510. [35] S. Rhea, C. Wells, P. Eaton, D. Geels, B. Zhao, H. Weatherspoon and J. Kubiatowicz, Maintenance free global storage in oceanstore, in Poc. of IEEE Internet Computing, (2001), 40–49. [36] I. Tamo and A. Barg, Bounds on locally recoverable codes with multiple recovering sets, in IEEE International Symposium on Information Theory, Honolulu, HI, (2014), 691–695. doi: 10.1109/ISIT.2014.6874921. [37] I. Tamo and A. Barg, A family of optimal locally recoverable codes, IEEE Trans. Inf. Theory, 60 (2014), 4661-4676.  doi: 10.1109/TIT.2014.2321280. [38] I. Tamo, D. Papailiopoulos and A. Dimakis, Optimal locally repairable codes and connections to matroid theory, in IEEE Int. Symp. Information Theory, Istanbul, (2013), 1814–1818. [39] M. A. Tebbi, T. H. Chan and C. W. Sung, Linear programming bounds for robust locally repairable storage codes, in IEEE Information Theory Workshop (ITW 2014), (2014), 50–54. doi: 10.1109/ITW.2014.6970790. [40] A. Wang and Z. Zhang, Repair locality from a combinatorial perspective, in IEEE Int. Symp. Information Theory, (2014), 1972–1976. [41] H. Weatherspoon and J. D. Kubiatowicz, Erasure coding vs. replication: A quantitative comparison, in Proc. Int. Workshop Peer-to-Peer Syst., (2002), 328–337. doi: 10.1007/3-540-45748-8_31. [42] S. B. Wicker, Error Control Systems for Digital Communication and Storage, Prentice Hall, Englewood Cliffs, NJ, 1995. [43] A. Zeh and E. Yaakobi, Bounds and constructions of codes with multiple localities, in IEEE Int. Symp. Information Theory (ISIT), Barcelona, Spain, (2016), 640–644. doi: 10.1109/ISIT.2016.7541377.

Figures(6)