30 research outputs found
An Explicit Construction of Systematic MDS Codes with Small Sub-packetization for All-Node Repair
An explicit construction of systematic MDS codes, called HashTag+ codes, with
arbitrary sub-packetization level for all-node repair is proposed. It is shown
that even for small sub-packetization levels, HashTag+ codes achieve the
optimal MSR point for repair of any parity node, while the repair bandwidth for
a single systematic node depends on the sub-packetization level. Compared to
other codes in the literature, HashTag+ codes provide from 20% to 40% savings
in the average amount of data accessed and transferred during repair
Network Traffic Driven Storage Repair
Recently we constructed an explicit family of locally repairable and locally
regenerating codes. Their existence was proven by Kamath et al. but no explicit
construction was given. Our design is based on HashTag codes that can have
different sub-packetization levels. In this work we emphasize the importance of
having two ways to repair a node: repair only with local parity nodes or repair
with both local and global parity nodes. We say that the repair strategy is
network traffic driven since it is in connection with the concrete system and
code parameters: the repair bandwidth of the code, the number of I/O
operations, the access time for the contacted parts and the size of the stored
file. We show the benefits of having repair duality in one practical example
implemented in Hadoop. We also give algorithms for efficient repair of the
global parity nodes.Comment: arXiv admin note: text overlap with arXiv:1701.0666
Convertible Codes: New Class of Codes for Efficient Conversion of Coded Data in Distributed Storage
Erasure codes are typically used in large-scale distributed storage systems to provide durability of data in the face of failures. In this setting, a set of k blocks to be stored is encoded using an [n, k] code to generate n blocks that are then stored on different storage nodes. A recent work by Kadekodi et al. [Kadekodi et al., 2019] shows that the failure rate of storage devices vary significantly over time, and that changing the rate of the code (via a change in the parameters n and k) in response to such variations provides significant reduction in storage space requirement. However, the resource overhead of realizing such a change in the code rate on already encoded data in traditional codes is prohibitively high.
Motivated by this application, in this work we first present a new framework to formalize the notion of code conversion - the process of converting data encoded with an [n^I, k^I] code into data encoded with an [n^F, k^F] code while maintaining desired decodability properties, such as the maximum-distance-separable (MDS) property. We then introduce convertible codes, a new class of code pairs that allow for code conversions in a resource-efficient manner. For an important parameter regime (which we call the merge regime) along with the widely used linearity and MDS decodability constraint, we prove tight bounds on the number of nodes accessed during code conversion. In particular, our achievability result is an explicit construction of MDS convertible codes that are optimal for all parameter values in the merge regime albeit with a high field size. We then present explicit low-field-size constructions of optimal MDS convertible codes for a broad range of parameters in the merge regime. Our results thus show that it is indeed possible to achieve code conversions with significantly lesser resources as compared to the default approach of re-encoding