Cooperative repair model is an available technology to deal with multiple node failures in distributed storage systems. Recently, explicit constructions of cooperative MSR codes were given by Ye (IEEE Transactions on Information Theory, 2020) with sub-packetization level $(d-k+h)(d-k+1)^n$. Specifically, the sub-packetization level is $(h+1)2^n$ when $d=k+1$. In this paper, we propose a new cooperative repair scheme by means of the inter-instance and intra-instance pairing inherited from the perfect code which reduces the sub-packetization to $2^n$ when $(h+1)|2^n$ and $(2\ell+1)2^n$ when $h+1=(2\ell+1)2^m$ for $m\ge 0$, $\ell\ge 1$ with $d=k+1$ helper nodes. That is to say, the sub-packetization is $h + 1 $ times or $2^m$ times less than Ye's. It turned out to be the best result so far known.
We present a high-rate $(n,k,d=n-1)$-MSR code with a sub-packetization level that is polynomial in the dimension $k$ of the code. While polynomial sub-packetization level was achieved earlier for vector MDS codes that repair systematic nodes optimally, no such MSR code construction is known. In the low-rate regime (i. e., rates less than one-half), MSR code constructions with a linear sub-packetization level are available. But in the high-rate regime (i. e., rates greater than one-half), the known MSR code constructions required a sub-packetization level that is exponential in $k$. In the pres…
We present two lower bounds on sub-packetization level $α$ of MSR codes with parameters $(n, k, d=n-1, α)$ where $n$ is the block length, $k$ dimension, $d$ number of helper nodes contacted during single node repair and $α$ the sub-packetization level. The first bound we present is for any MSR code and is given by $α\ge e^{\frac{(k-1)(r-1)}{2r^2}}$. The second bound we present is for the case of optimal-access MSR codes and the bound is given by $α\ge \min \{ r^{\frac{n-1}{r}}, r^{k-1} \}$. There exist optimal-access MSR constructions that achieve the second sub-packetization level bound with …
This paper presents an explicit construction of a class of optimal-access, minimum storage regenerating (MSR) codes, for small values of the number $d$ of helper nodes. The construction is valid for any parameter set $(n,k,d)$ with $d \in \{k+1, k+2, k+3\}$ and employs a finite field $\mathbb{F}_q$ of size $q=O(n)$. We will refer to the constructed codes as Small-d MSR codes. The sub-packetization level $α$ is given by $α= s^{{\lceil\frac{n}{s}\rceil}}$, where $s=d-k+1$. By an earlier result on the sub-packetization level for optimal-access MSR codes, this is the smallest value possible.
Reducing The Sub-packetization Level of Optimal-Access Cooperative MSR Codes
Ministry of Education Key Laboratory of Mathematics and Information Networks, School of Mathematical Sciences, Beijing University of Posts and Telecommunications(北京邮电大学数学与信息技术教育部重点实验室);School of Information Science and Engineering, Shandong Agricultural University(山东农业大学信息科学与工程学院)
Minimum storage regenerating (MSR) codes are MDS codes which allow for recovery of any single erased symbol with optimal repair bandwidth, based on the smallest possible fraction of the contents downloaded from each of the other symbols. Recently, certain Reed-Solomon codes were constructed which are MSR. However, the sub-packetization of these codes is exponentially large, growing like $n^{Ω(n)}$ in the constant-rate regime. In this work, we study the relaxed notion of $ε$-MSR codes, which incur a factor of $(1+ε)$ higher than the optimal repair bandwidth, in the context of Reed-Solomon codes…
This paper presents a construction for high-rate MDS codes that enable bandwidth-efficient repair of a single node. Such MDS codes are also referred to as the minimum storage regenerating (MSR) codes in the distributed storage literature. The construction presented in this paper generates MSR codes for all possible number of helper nodes $d$ as $d$ is a design parameter in the construction. Furthermore, the obtained MSR codes have polynomial sub-packetization (a.k.a. node size) $α$. The construction is built on the recent code proposed by Sasidharan et al. [1], which works only for $d = n-1$, …
This paper presents an explicit construction for an $((n,k,d=n-1), (α,β))$ regenerating code over a field $\mathbb{F}_Q$ operating at the Minimum Storage Regeneration (MSR) point. The MSR code can be constructed to have rate $k/n$ as close to $1$ as desired, sub-packetization given by $r^{\frac{n}{r}}$, for $r=(n-k)$, field size no larger than $n$ and where all code symbols can be repaired with the same minimum data download. The construction modifies a prior construction by Sasidharan et. al. which required far larger field-size. A building block appearing in the construction is a scalar MDS …
An $(n,k,\ell)$-vector MDS code is a $\mathbb{F}$-linear subspace of $(\mathbb{F}^\ell)^n$ (for some field $\mathbb{F}$) of dimension $k\ell$, such that any $k$ (vector) symbols of the codeword suffice to determine the remaining $r=n-k$ (vector) symbols. The length $\ell$ of each codeword symbol is called the sub-packetization of the code. Such a code is called minimum storage regenerating (MSR), if any single symbol of a codeword can be recovered by downloading $\ell/r$ field elements (which is known to be the least possible) from each of the other symbols. MSR codes are attractive for use in…
Given the scale of today's distributed storage systems, the failure of an individual node is a common phenomenon. Various metrics have been proposed to measure the efficacy of the repair of a failed node, such as the amount of data download needed to repair (also known as the repair bandwidth), the amount of data accessed at the helper nodes, and the number of helper nodes contacted. Clearly, the amount of data accessed can never be smaller than the repair bandwidth. In the case of a help-by-transfer code, the amount of data accessed is equal to the repair bandwidth. It follows that a help-by-…
An $(n,k,l)$ MDS array code of length $n,$ dimension $k=n-r$ and sub-packetization $l$ is formed of $l\times n$ matrices over a finite field $F,$ with every column of the matrix stored on a separate node in a distributed storage system and viewed as a coordinate of the codeword. Repair of a failed node can be performed by accessing a set of $d\le n-1$ helper nodes. The code is said to have the optimal access property if the amount of data accessed at each of the helper nodes meets a lower bound on this quantity. For optimal-access MDS codes with $d=n-1,$ the sub-packetization $l$ satisfies the…
Reed-Solomon (RS) codes are widely used in distributed storage systems. In this paper, we study the repair bandwidth and sub-packetization size of RS codes. The repair bandwidth is defined as the amount of transmitted information from surviving nodes to a failed node. The RS code can be viewed as a polynomial over a finite field $GF(q^\ell)$ evaluated at a set of points, where $\ell$ is called the sub-packetization size. Smaller bandwidth reduces the network traffic in distributed storage, and smaller $\ell$ facilitates the implementation of RS codes with lower complexity. Recently, Guruswami …
In a distributed storage systems (DSS) with $k$ systematic nodes, robustness against node failure is commonly provided by storing redundancy in a number of other nodes and performing repair mechanism to reproduce the content of the failed nodes. Efficiency is then achieved by minimizing the storage overhead and the amount of data transmission required for data reconstruction and repair, provided by coding solutions such as regenerating codes [1]. Common explicit regenerating code constructions enable efficient repair through accessing a predefined number, $d$, of arbitrary chosen available nod…
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.
We consider the rack-aware storage system where \(n\) nodes are organized in \(\bar{n}\) racks each containing \(u\) nodes, and any \(k\) nodes can retrieve the stored file. Moreover, any single node erasure can be recovered by downloading data from \(\bar{d}\) helper racks as well as the remaining \(u\!-\!1\) nodes in the same rack. Previous work mostly focuses on minimizing the cross-rack repair bandwidth under the condition \(\bar{d}\geq \bar{k}\), where \(\bar{k}=\lfloor\frac{k}{u}\rfloor\). However, \(\bar{d}\geq \bar{k}\) is not an intrinsic condition for the rack-aware storage model. In…
Optimal-Access Cooperative MSR Codes: Parity-Check Matrix Construction And a Unified Transformation
Ministry of Education Key Laboratory of Mathematics and Information Networks, School of Mathematical Sciences, Beijing University of Posts and Telecommunications(北京邮电大学数学与信息技术教育部重点实验室);School of Information Science and Engineering, Shandong Agricultural University(山东农业大学信息科学与工程学院)
Private information retrieval (PIR) is the problem of privately retrieving one out of $M$ original files from $N$ severs, i.e., each individual server learns nothing about the file that the user is requesting. Usually, the $M$ files are replicated or encoded by a maximum distance separable (MDS) code and then stored across the $N$ servers. Compared to mere replication, MDS coded servers can significantly reduce the storage overhead. Particularly, PIR from minimum storage regenerating (MSR) coded servers can simultaneously reduce the repair bandwidth when repairing failed servers. Existing PIR …
An $(n,k)$ maximum distance separable (MDS) code has optimal repair access if the minimum number of symbols accessed from $d$ surviving nodes is achieved, where $k+1\le d\le n-1$. Existing results show that the sub-packetization $α$ of an $(n,k,d)$ high code rate (i.e., $k/n>0.5$) MDS code with optimal repair access is at least $(d-k+1)^{\lceil\frac{n}{d-k+1}\rceil}$. In this paper, we propose a class of multi-layer transformed MDS codes such that the sub-packetization is $(d-k+1)^{\lceil\frac{n}{(d-k+1)η}\rceil}$, where $η=\lfloor\frac{n-k-1}{d-k}\rfloor$, and the repair access is optimal for…
A novel technique for construction of minimum storage regenerating (MSR) codes is presented. Based on this technique, three explicit constructions of MSR codes are given. The first two constructions provide access-optimal MSR codes, with two and three parities, respectively, which attain the sub-packetization bound for access-optimal codes. The third construction provides longer MSR codes with three parities, which are not access-optimal, and do not necessarily attain the sub-packetization bound. In addition to a minimum storage in a node, all three constructions allow the entire data to be re…
Partial maximum distance separable (PMDS) codes are a kind of erasure codes where the nodes are divided into multiple groups with each forming an MDS code with a smaller code length, thus they allow repairing a failed node with only a few helper nodes and can correct all erasure patterns that are information-theoretically correctable. However, the repair of a failed node of PMDS codes still requires a large amount of communication if the group size is large. Recently, PMDS array codes with each local code being an MSR code were introduced to reduce the repair bandwidth further. However, they r…
Key Laboratory of Cryptologic Technology and Information Security, Ministry of Education(教育部密码技术与信息安全重点实验室);School of Cyber Science and Technology, Shandong University(山东大学网络空间安全学院);Quan Cheng Laboratory(泉城实验室)
A novel coding scheme for exact repair-regenerating codes is presented in this paper. The codes proposed in this work can trade between the repair bandwidth of nodes (number of downloaded symbols from each surviving node in a repair process) and the required storage overhead of the system. These codes work for general system parameters $(n,k,d)$, which are the total number of nodes, the number of nodes suffice for data recovery, and the number of helper nodes in a repair process, respectively. The proposed construction offers a unified scheme to develop exact-repair regenerating codes for the …
The paper is devoted to the problem of erasure coding in distributed storage. We consider a model of storage that assumes that nodes are organized into equally sized groups, called racks, that within each group the nodes can communicate freely without taxing the system bandwidth, and that the only information transmission that counts is the one between the racks. This assumption implies that the nodes within each of the racks can collaborate before providing information to the failed node. The main emphasis of the paper is on code construction for this storage model. We present an explicit fam…
$ε$-Minimum Storage Regenerating ($ε$-MSR) codes form a special class of Maximum Distance Separable (MDS) codes, providing mechanisms for exact regeneration of a single code block in their codewords by downloading slighly sub-optimal amount of information from the remaining code blocks. The key advantage of these codes is a significantly lower sub-packetization that grows only logarithmically with the length of the code, while providing optimality in storage and error-correcting capacity. However, from an implementation point of view, these codes require each remaining code block to be availab…
We consider the problem of multiple-node repair in distributed storage systems under the cooperative model, where the repair bandwidth includes the amount of data exchanged between any two different storage nodes. Recently, explicit constructions of MDS codes with optimal cooperative repair bandwidth for all possible parameters were given by Ye and Barg (IEEE Transactions on Information Theory, 2019). The node size (or sub-packetization) in this construction scales as $\exp(Θ(n^h))$, where $h$ is the number of failed nodes and $n$ is the code length. In this paper, we give new explicit constru…
This paper addresses the problem of constructing secure exact-repair regenerating codes at the MSR point for all feasible values of the parameters. The setting involves a passive eavesdropper who is allowed to observe the stored contents of, and the downloads into, an $l$-subset of the $n$ nodes of a distributed storage system (DSS). The objective is to achieve perfect secrecy between the eavesdropped symbols and the file stored on the DSS. Previous secure code constructions (most notably that by Rawat et al.) tackle the problem only for the restricted case wherein the number, $d$, of helper n…
We consider the rack-aware storage system where $n=\bar{n}u$ nodes are organized in $\bar{n}$ racks each containing $u$ nodes, and any $k=\bar{k}u+u_0~(0\leq u_0<u)$ nodes can retrieve the original data file. More importantly, the cross-rack communication cost is much more expensive than the intra-rack communication cost, so that the latter is usually neglected in the system bandwidth. The MSRR (minimum storage rack-aware regenerating) code is an important variation of regenerating codes that achieves the optimal repair bandwidth for single node failures in the rack-aware model. However, expli…
Here, we revisit the problem of exploring the secrecy capacity of minimum storage cooperative regenerating (MSCR) codes under the $\{l_1,l_2\}$-eavesdropper model, where the eavesdropper can observe the data stored on $l_1$ nodes and the repair downloads of an additional $l_2$ nodes. Compared to minimum storage regenerating (MSR) codes which support only single node repairs, MSCR codes allow efficient simultaneous repairs of multiple failed nodes, referred to as a \emph{repair group}. However, the repair data sent from a helper node to another failed node may vary with different repair groups …
An $(n, k, d, α)$-MSR (minimum storage regeneration) code is a set of $n$ nodes used to store a file. For a file of total size $kα$, each node stores $α$ symbols, any $k$ nodes recover the file, and any $d$ nodes can repair any other node via each sending out $α/(d-k+1)$ symbols. In this work, we explore various ways to re-express the infamous product-matrix construction using skew-symmetric matrices, polynomials, symmetric algebras, and exterior algebras. We then introduce a multilinear algebra foundation to produce $\bigl(n, k, \frac{(k-1)t}{t-1}, \binom{k-1}{t-1}\bigr)$-MSR codes for genera…
In the literature, most of the known high-rate $(n,k)$ MDS array codes with the optimal repair property only support a single repair degree (i.e., the number of helper nodes contacted during a repair process) $d$, where $k\le d\le n-1$. However, in practical storage systems, the number of available nodes changes frequently. Thus, it is preferred to construct $(n,k)$ MDS array codes with multiple repair degrees and the optimal repair property for all nodes. To the best of our knowledge, only two MDS array codes have such properties in the literature, which were proposed by Ye and Barg (IEEE Tra…
We study the problem of erasure correction (node repair) for regenerating codes defined on graphs wherein the cost of transmitting the information to the failed node depends on the graphical distance from this node to the helper vertices of the graph. The information passed to the failed node from the helpers traverses several vertices of the graph, and savings in communication complexity can be attained if the intermediate vertices process the information rather than simply relaying it toward the failed node. We derive simple information-theoretic bounds on the amount of information communica…
In this paper, we provide explicit constructions for a class of exact-repair regenerating codes that possess a layered structure. These regenerating codes correspond to interior points on the storage-repair-bandwidth tradeoff, and compare very well in comparison to scheme that employs space-sharing between MSR and MBR codes. For the parameter set $(n,k,d=k)$ with $n < 2k-1$, we construct a class of codes with an auxiliary parameter $w$, referred to as canonical codes. With $w$ in the range $n-k < w < k$, these codes operate in the region between the MSR point and the MBR point, and perform sig…
We construct an explicit family of locally repairable and locally regenerating codes whose existence was proven in a recent work by Kamath et al. about codes with local regeneration but no explicit construction was given. This explicit family of codes is based on HashTag codes. HashTag codes are recently defined vector codes with different vector length $α$ (also called a sub-packetization level) that achieve the optimal repair bandwidth of MSR codes or near-optimal repair bandwidth depending on the sub-packetization level. We applied the technique of parity-splitting code construction. We sho…
Minimum-Storage Regenerating (MSR) codes have emerged as a viable alternative to Reed-Solomon (RS) codes as they minimize the repair bandwidth while they are still optimal in terms of reliability and storage overhead. Although several MSR constructions exist, so far they have not been practically implemented mainly due to the big number of I/O operations. In this paper, we analyze high-rate MDS codes that are simultaneously optimized in terms of storage, reliability, I/O operations, and repair-bandwidth for single and multiple failures of the systematic nodes. The codes were recently introduce…
Coding for distributed storage gives rise to a new set of problems in coding theory related to the need of reducing inter-node communication in the system. A large number of recent papers addressed the problem of optimizing the total amount of information downloaded for repair of a single failed node (the repair bandwidth) by accessing information on $d$ {\em helper nodes}, where $k\le d\le n-1.$ By the so-called cut-set bound (Dimakis et al., 2010), the repair bandwidth of an $(n,k=n-r)$ MDS code using $d$ helper nodes is at least $dl/(d+1-k),$ where $l$ is the size of the node. Also, a numbe…
In a modern distributed storage system, storage nodes are organized in racks, and the cross-rack communication dominates the system bandwidth. In We study the rack-aware storage system where all storage nodes are organized in racks and within each rack the nodes can communicate freely without taxing the system bandwidth. Rack-aware regenerating codes (RRCs) were proposed for minimizing the repair bandwidth for single erasures. In the initial setting of RRCs, the repair of a single node requires the participation of all the remaining nodes in the rack containing the failed node as well as a lar…
Cooperative regenerating codes are regenerating codes designed to tradeoff storage for repair bandwidth in case of multiple node failures. Minimum storage cooperative regenerating (MSCR) codes are a class of cooperative regenerating codes which achieve the minimum storage point of the tradeoff. Recently, these codes have been constructed for all possible parameters $(n,k,d,h)$, where $h$ erasures are repaired by contacting any $d$ surviving nodes. However, these constructions have very large sub-packetization. $ε$-MSR codes are a class of codes introduced to tradeoff subpacketization level for…
We continue our study of regenerating codes in distributed storage systems where connections between the nodes are constrained by a graph. In this problem, the failed node downloads the information stored at a subset of vertices of the graph for the purpose of recovering the lost data. This information is moved across the network, and the cost of node repair is determined by the graphical distance from the helper nodes to the failed node. This problem was formulated in our recent work (IEEE IT Transactions, May 2022) where we showed that processing of the information at the intermediate nodes …
Regenerating codes and codes with locality are two schemes that have recently been proposed to ensure data collection and reliability in a distributed storage network. In a situation where one is attempting to repair a failed node, regenerating codes seek to minimize the amount of data downloaded for node repair, while codes with locality attempt to minimize the number of helper nodes accessed. In this paper, we provide several constructions for a class of vector codes with locality in which the local codes are regenerating codes, that enjoy both advantages. We derive an upper bound on the min…