Optimal Fractional Repetition Codes
based on Graphs and Designs
Fractional repetition (FR) codes is a family of codes for distributed storage systems that allow for uncoded exact repairs having the minimum repair bandwidth. However, in contrast to minimum bandwidth regenerating (MBR) codes, where a random set of a certain size of available nodes is used for a node repair, the repairs with FR codes are table based. This usually allows to store more data compared to MBR codes. In this work, we consider bounds on the fractional repetition capacity, which is the maximum amount of data that can be stored using an FR code. Optimal FR codes which attain these bounds are presented. The constructions of these FR codes are based on combinatorial designs and on families of regular and biregular graphs. These constructions of FR codes for given parameters raise some interesting questions in graph theory. These questions and some of their solutions are discussed in this paper. In addition, based on a connection between FR codes and batch codes, we propose a new family of codes for DSS, namely fractional repetition batch codes, which have the properties of batch codes and FR codes simultaneously. These are the first codes for DSS which allow for uncoded efficient exact repairs and load balancing which can be performed by several users in parallel. Other concepts related to FR codes are also discussed.
In a distributed storage system (DSS), data is stored across a network of nodes, which can unexpectedly fail. To provide reliability, data redundancy based on coding techniques is introduced in such systems. Moreover, existing erasure codes allow to minimize the storage overhead . Dimakis et al.  introduced a new family of erasure codes, called regenerating codes, which allow for efficient single node repairs by minimizing repair bandwidth. In particular, they presented two families of regenerating codes, called minimum storage regenerating (MSR) and minimum bandwidth regenerating (MBR) codes, which correspond to the two extreme points on the storage-bandwidth trade-off . Constructions for these two families of codes can be found in [41, 13, 14, 32, 34, 37, 40] and references therein.
An regenerating code , for , , is used to store a file of size across a network of nodes, where each node stores symbols from , a finite field with elements, such that the stored file can be recovered by downloading the data from any set of nodes, where is called the reconstruction degree. Note, that this means that any node failures (i.e., erasures) can be corrected by this code. When a single node fails, a newcomer node which substitutes the failed node contacts any set of nodes and downloads symbols of each node in this set to reconstruct the failed data. This process is called a node repair process, and the amount of data downloaded to repair a failed node, , is called the repair bandwidth.
The family of MBR codes has the minimum possible repair bandwidth, namely . In [32, 33] Rashmi et al. presented a construction for MBR codes which have the additional property of exact repair by transfer, or exact uncoded repair. In other words, the code proposed in [32, 33] allows for efficient node repairs where no decoding is needed. Every node participating in a node repair process just passes one symbol () which will be directly stored in the newcomer node. This construction is based on a concatenation of an outer MDS code with an inner repetition code based on a complete graph as follows. Let be the size of a file, which corresponds to MBR capacity with . This file is first encoded by using an MDS code . The symbols of the corresponding codeword of are placed on the different nodes, where each node stores symbols, as follows. Each node is associated with a vertex in , the complete graph with vertices. Every symbol of the codeword from is associated with an edge of . Each node of the DSS stores the symbols of the codeword of which are associated with the edges incident to vertex of . The uniqueness of this construction for the given parameters was proved in .
El Rouayheb and Ramchandran  generalized the construction of  and defined a new family of codes for DSSs which also allow exact repairs by transfer for a wide range of parameters. These codes, called DRESS (Distributed Replication based Exact Simple Storage) codes , consist of the concatenation of an outer MDS code and an inner repetition code called fractional repetition (FR) code. These codes for DSSs relax the requirement of a random -set for a repair of a failed node and instead the repair becomes table based (or by using an appropriate function). This modified model requires new bounds on the maximum amount of data that can be stored on a DSS based on an FR code.
An FR code is a collection of subsets of , , such that
for each , ;
each symbol of belongs to exactly subsets in , where is called the repetition degree of .
A DRESS code is a code obtained by the concatenation of an outer MDS code and an inner FR code . To store a file on a DSS, f is first encoded by using ; next, the symbols of the codeword , which encodes the file f, are placed on the nodes defined by as follows: node of the DSS stores symbols of , indexed by the elements of the subset . Each symbol of is stored in exactly nodes and it is possible to reconstruct the stored file f from any set of nodes. When some node fails, it can be repaired by using a set of other nodes , such that , , and . Each such node passes exactly one symbol () to repair node . Note that the repair bandwidth of a DRESS code is the same as the repair bandwidth of an MBR code. The encoding scheme based on an FR code is shown in Fig. 1.
Note that the stored file should be reconstructed from any set of nodes, and since the outer code is an MDS code of dimension , it follows that
where at least of distinct symbols of the MDS codeword are contained in any set of nodes. Since we want to maximize the size of a file that can be stored by using a DRESS code, in the sequel we will always assume that 111In some works this value is called the rate of a code. To avoid a confusion with a rate of a classical code we refer to this value as to the maximum file size.. Note, that the same FR code can be used in different DRESS codes, with different ’s as reconstruction degrees, and different MDS codes. The file size , which is the dimension of the chosen MDS code, depends on the value of chosen and hence in the sequel we will use to denote the size of the file.
An FR code is called universally good  if for any the DRESS code satisfies
where the righthand side of equation (2) is the maximum file size that can be stored using an MBR code, i.e., the MBR capacity . In particular, it is of interest to consider codes which allow to store larger files when compared to MBR codes. Note that to satisfy (2) the inner FR code of a DRESS code should satisfy that
Two upper bounds on the maximum file size of a DRESS code (), called the FR capacity and denoted in the sequel by , were presented in :
in other words, the size of a file stored by using the FR code is the maximum possible for the given . We call an FR code optimal if for any it is -optimal 222Note that since we always have (very similarly to the parameters of regenerating codes)..
Constructions for FR codes are considered in many papers starting from , where FR codes are constructed from random regular graphs, Steiner systems, and their dual designs. Randomized FR codes based on the balls-and-bins model are presented in . Constructions of FR codes with the fewest number of storage nodes given the other parameters, based on finite geometries and corresponding bipartite cage graphs are considered in . FR codes based on affine resolvable designs and mutually orthogonal Latin squares are presented in [26, 28]. Enumeration of FR codes up to a given number of system nodes is presented in . Algorithms for computing the reconstruction degree and the repair degree of FR codes are presented in . Construction of FR codes based on regular graphs with a given girth, in particular cages, and analysis of their minimum distance is considered in . Generalization of FR codes to weak or general FR codes, where each node stores a different amount of symbols, and constructions of codes based on graphs and group divisible designs are considered in [20, 45].
Note, that in all these papers the optimality of the constructed FR codes regarding the FR capacity, i.e. the maximality of the size of the stored file, was not considered. In this paper, we address the problem of constructing -optimal FR codes and optimal FR codes (and hence optimal DRESS codes). In addition, we consider various problems from graph theory raised from the problem of constructing FR codes and present FR codes with additional desired properties.
The rest of the paper is organized as follows. In Section II we provide the main definitions of the structures which will be used in our constructions. In particular, in Subsection II-A we provide definitions for some families of regular graphs and graphs with a given girth. We present the Turán’s theorem and the Moore bound which are essential for the results in this paper. In Subsection II-B we provide the definitions of transversal designs, projective planes, generalized polygons, and their incidence matrices. The definitions of FR codes based on graphs or on designs are given in Subsection II-C.
In Section III we consider FR codes with and propose constructions for FR codes which attain the bound in (5). Some of these codes are optimal and some are -optimal for specific values of . Note, that the case corresponds to the case of the highest data/storage ratio, since the repetition degree is the lowest one. All the constructions in this section are based on different families of regular graphs. First, we provide a useful lemma which shows the connection between the file size of a code and the structure of its underlying graph. In Subsection III-A optimal FR codes based on Turán graphs are considered. In Subsection III-B -optimal FR codes based on different regular graphs with a given girth are presented. In Subsection III-C FR codes with a given file size are considered. The constructions raise many interesting questions in graph theory which are discussed in this section.
In Section IV we consider FR codes with . In this case, a failed node can be repaired from several sets of other nodes, in contrast to the case with , in which a failed node can be repaired from a unique subset of available nodes. One construction is based on a family of combinatorial designs, called transversal designs. This construction generalizes the construction based on Turán graphs for . Another construction is based on biregular bipartite graphs with a given girth. One important family of such graphs are the generalized polygons. We analyze the parameters of the constructed codes and find the conditions for which the bound in (5) is attained.
In Section V we establish a connection between the file size hierarchy and the generalized Hamming weight hierarchy. In fact, the sizes of the file related to the increasing values of ’s form an integer sequence of nondecreasing values which can be viewed as a generalized definition for Hamming weights for constant weight codes. In Section VI we provide a lower bound on the reconstruction degree and present some FR codes which attain this bound.
In Section VII we analyze additional properties of FR codes by establishing a connection between FR codes and combinatorial batch codes. We propose a novel family of codes for DSS, called fractional repetition batch codes (FRB), which enable exact uncoded repairs and load balancing that can be performed by several users in parallel. We present examples of constructions of FRB codes based on bipartite complete graphs, graphs with large girth, transversal designs and affine planes. Conclusion are given in Section VIII.
In this section we provide the definitions of all the combinatorial objects used for the constructions of FR codes presented in this paper.
Ii-a Regular and Biregular Graphs
A graph consists of a vertex set and an edge set , where an edge is an unordered pair of vertices of . For an edge we say that and are adjacent and that and are incident. The degree of a vertex is the number of edges incident with it. We say that a graph is regular if all its vertices have the same degree and is -regular if each vertex has degree . A graph is called connected if there is path between any pair of vertices. A graph is called complete if every pair of vertices are adjacent. A complete graph on vertices is denoted by . A subgraph of a graph is a graph such that and . A subgraph of a graph is called induced if . A k-clique in a graph is a complete subgraph of with vertices. The complement of a graph , denoted by , is a graph with the same vertex set but whose edge set consists of all the edges not contained in , i.e., .
The incidence matrix of a graph is a binary matrix with rows and columns indexed by the vertices and edges of , respectively, such that if and only if vertex and edge are incident.
A graph is called bipartite (-partite, respectively) if its vertex set can be partitioned into two (, respectively) parts such that every two adjacent vertices belong to two different parts. A bipartite graph is denoted by , where is the left part and is the right part of . A bipartite graph is called biregular if the degree of the vertices in one part is and the degree of the vertices in the other part is . An -partite graph is called complete if every two vertices from two different parts are connected by an edge. The complete bipartite graph with left part of size and right part of size is denoted by . Note that in the degree of a vertex in the left part is and the degree of a vertex in the right part is .
The following theorem, known as Turán’s theorem, provides a necessary condition that a graph does not contain a clique of a given size [23, p. 58].
If a graph on vertices has no -clique, , then
If is an -regular graph which does not contain an -clique then
We consider a family of regular graphs, called Turán graphs, which attain the bound of Corollary 2, in other words, have the smallest number of vertices. Let be two integers such that divides . An -Turán graph is defined as a regular complete -partite graph, i.e., a graph formed by partitioning a set of vertices into parts of size and connecting each two vertices of different parts by an edge. Clearly, an -Turán graph does not contain a clique of size and it is an -regular graph.
We now turn to another family of graphs, called cages. A cycle in a graph is a connected subgraph of in which each vertex has degree two. The girth of a graph is the length of its shortest cycle. A -cage is a -regular graph with girth and minimum number of vertices. For example, a -cage is a complete bipartite graph . Constructions for cages are known for . Let be the minimum number of vertices in a -cage. A lower bound on the number of vertices in a -cage is given in the following theorem, known as Moore bound [10, p. 180].
The number of vertices in a -cage is at least
Ii-B Combinatorial Designs
A set system is a pair , where is a finite nonempty set of points and is a finite nonempty set of subsets of called blocks. A design is set system with a constant number of points per block and no repeated blocks. A design can be described by an incidence matrix , which is a binary matrix, with rows indexed by the points, columns indexed by the blocks, where
The incidence graph of is the bipartite graph with the vertex set , where if and only if , for , .
A transversal design of group size and block size , denoted by is a triple , where
is a set of points;
is a partition of into sets (groups), each one of size ;
is a collection of -subsets of (blocks);
each block meets each group in exactly one point;
any pair of points from different groups is contained in exactly one block.
The properties of a transversal design which will be useful for our constructions are summarized in the following lemma .
Let be a transversal design . Then
The number of points is given by ;
The number of groups is given by ;
The number of blocks is given by ;
The number of blocks that contain a given point is equal to .
The girth of the incidence graph of a transversal design is equal to .
A is called resolvable if the set can be partitioned into subsets , each one contains blocks, such that each element of is contained in exactly one block of each , i.e., the blocks of partition the set . Resolvable transversal design is known to exist for any and prime power .
A , for any integer is equivalent to the complete bipartite graph .
Next, we consider two families of designs whose incidence graphs attain the Moore bound (7).
A projective plane of order denoted by , is a design , such that , each block of is of size , and any two points are contained in exactly one block. Note that any two blocks in have exactly one common point. It is well known (see ) that the incidence graph of a projective plane has girth .
A generalized quadrangle of order , denoted by is a design , where
Each point is incident with blocks, and each block is incident with points.
Any two blocks have at most one common point.
For any pair , such that , there is exactly one block incident with , such that .
In a generalized quadrangle , the number of points , the number of blocks and the girth of the incidence graph is .
We note that transversal designs, projective planes, and generalized quadrangles belong to a class of designs called partial geometries. In addition, projective planes and generalized quadrangles are examples of designs called generalized polygons (or -gons). Their incidence graphs have girth and they attain the Moore bound. Such structures are known to exist only for .
Ii-C FR Codes based on Graphs and Designs
Let be an FR code. can be described by an incidence matrix , which is an binary matrix, , with rows indexed by the nodes of the code and columns indexed by the symbols of the corresponding MDS codeword, such that if and only if node contains symbol .
Let be an -regular graph with vertices. We say that an FR code is based on if . Such a code will be denoted by . It can be readily verified that any FR code can be represented by an -regular graph with vertices.
Let be a design with points such that each block contains points and each point is contained in blocks. We say that an FR code is based on if . Such a code will be denoted by .
Iii Fractional Repetition Codes with Repetition Degree 2
In this section we present constructions of optimal and -optimal FR codes with repetition degree . These constructions are based on different types of regular graphs and are given in Subsections III-A and III-B. In Subsection III-C the properties of these graphs are investigated in order to present FR codes which allow to store a file of any given size. To avoid triviality we assume throughout the section that .
First, we present the following useful lemma which shows a connection between the problem of finding the file size of an FR code based on a graph and the edge isoperimetric problem on graphs .
Let be an -regular graph and let be the FR code based on . We denote by the family of induced subgraphs of with vertices, i.e.,
Then the file size of is given by
For each induced subgraph we define to be the set of all the edges of in the cut between and , i.e.,
Clearly, for every . Note that and hence
Iii-a Optimal FR Codes Based on Turán Graphs
We begin our discussion with the following lemma which follows directly from Lemma 5.
Let be an -regular graph with vertices, and let be the file size of the corresponding FR code . The graph contains a -clique if and only if .
The file size of an FR code , where is a graph which does not contain a -clique, is strictly larger than the MBR capacity.
One of the main advantages of an FR code is that its file size usually exceeds the MBR capacity. Hence, as a consequence of Corollary 7, we consider different families of regular graphs which do not contain a -clique for a given . Therefore, since Turán graphs have the minimum number of vertices among the graphs which do not contain a clique of a given size (see Corollary 2), we consider FR codes based on Turán graphs. The following theorem shows that FR codes obtained from Turán graphs attain the upper bound in (5) for all and hence they are optimal FR codes.
Let be an -Turán graph, , and let be an integer such that . If for nonnegative integers such that then the FR code based on has file size
which attains the upper bound in (5).
By Lemma 5, the value of is determined by maximum cardinality of the edge set in an induced subgraph of , where . One can verify that since is a complete regular -partite graph, it follows that the induced subgraph with of the maximum cardinality is a complete -partite graph with exactly parts of size and parts of size . Hence, the number of edges in is given by
Thus, by Lemma 5,
Note, that for any , the file size of the code is strictly larger than the MBR capacity, i.e.,
In the following theorem we provide an alternative, simpler representation of a file size for the FR code based on a Turán graph. Obviously, this expression for the file size is equivalent to the expression in (8). The proof of this theorem is also simpler than the one of Theorem 8. However, the proof of Theorem 8 could be used for the proof of Theorem 36 in Section IV and hence it was given for completeness.
Let be an -Turán graph, , , and let be an integer such that . Then the FR code based on has the file size given by
The following result for FR codes based on complete bipartite graphs is a special case of Theorem 9 with .
The maximum size of a file that can be stored using the FR code based on a regular complete bipartite graph , for , is given by
which attains the upper bound in (5) for all .
The FR code based on and its file size for are shown in Fig. 2.
Iii-B -Optimal FR Codes Based on Graphs with a Given Girth
If is an FR code then the file size of , for any , satisfies
By Lemma 5, to obtain a large value for , every induced subgraph with vertices should be as sparse as possible. Hence, for the rest of this subsection we consider graphs with a large girth (usually larger than ), in other words, the induced subgraphs with vertices, , will be trees. Next, we consider the girth of a graph and show that FR codes obtained from a graph with a large enough girth are optimal.
Let be an -regular graph with vertices and let be the file size of the corresponding FR code . The girth of is at least if and only if .
Let be a graph with girth . Any induced subgraph of with vertices has at most edges if and only if . Clearly, there exists at least one induced subgraph of with vertices and edges. Thus, by Lemma 5 we have ∎
An FR code based on an -regular graph with girth is optimal.
Let be a graph with girth . Then the file size of an FR code based on satisfies
For the result follows directly from Lemma 12. Since the graph has a cycle of length , it follows that . If any subgraph of with vertices contains at most one cycle then the file size satisfies . Note that for there is no subgraph of with vertices that contains two cycles with no common vertices. Now we claim that the minimum number of vertices in a connected subgraph of with two cycles is . Assume for the contrary that , . Hence there exists a subgraph of depicted in Fig. 3 such that
Next we consider examples of FR codes based on some interesting graphs for which the girth is known.
Let TD be a transversal design. The FR code based on the incidence graph attains the bound in (5) for all .
The following graphs attain the Moore bound (see Theorem 3), i.e., they have the minimum number of vertices given girth and degree. The parameters of the FR codes corresponding to these graphs can be found in the following table.
|name of a graph||degree||girth|
|Complete bipartite graph||4|
Next, we use the Moore bound to show that the bound in (5) can be improved in some cases.
Let be integers such that . Since , the -regular graph with vertices corresponding to an FR code has girth at most , and hence by Lemma 12 the file size satisfies . Therefore, .
To complete the proof, we will show that if then . To prove this statement we will prove by induction that if then for all it holds that . This trivially holds for . Assume that , . Then, by applying the recursion in (5) we have
since for and .
Iii-C FR Codes with a Given File Size
and the value of the file size depends on the structure of the underlying -regular graph . If the graph contains a clique then the file size attains the lower bound in (15). If the graph does not contain a cycle of length then the file size attains the upper bound in (15). The intermediate values for the file size can be obtained by excluding certain subgraphs of from the graph . For example, if and only if does not contain as a subgraph, and to have , should not contain , i.e., a -clique without an edge. Note that the problem of finding the minimum number of vertices in a graph which does not contain a specific subgraph is highly related to a Turán type problems (see e.g., and the references therein).
For the rest of the section we assume that is an even integer.
There are only two possible values for , and . To have a code with file size , one should exclude a clique , which is also a cycle of length . From (7) it follows that for a given , if then . Equivalently, the necessary condition for is that .
Constructions for codes with file size are provided in the previous subsection, based on optimal (Turán, Moore) graphs, for specific choices for the parameters , where is even. In addition, we provide in Appendix A another two constructions of FR codes with file size , the first one for even , and the second one for odd .
The following lemma is proved in Appendix A.
Let is the minimum value of such that , for any . Then
We conjecture that . The following theorem is an immediate consequence from the discussion above (see also Appendix A).
The maximum file size for satisfies
For odd and even , .
By (15) we have that .
If then the corresponding graph contains a subgraph of with edges, but does not contain , a -clique without an edge. Codes with file size and minimum number of nodes are constructed from by Theorem 8.
If then the corresponding graph contains . Codes with file size and minimum number of nodes are constructed from the complete graph .
Let denote any graph with vertices and edges. By Lemma 5, to calculate the file size of an FR code based on a graph , we need to find an induced subgraph of with the largest . The following lemma is an immediate consequence from Lemma 5.
Let be an -regular graph and let be the FR code based on .
If contains an induced subgraph then .
If does not contain an induced subgraph for all then .
If contains an induced subgraph and does not contain for then .
Based on the previous discussion we have the following theorem.
The maximum file size for satisfies
To distinguish between file sizes and , we note that for the corresponding graph should not contain an induced subgraph . If does not contain then obviously it does not contain . Hence, by Theorem 18, for file size . If contains then let and be three vertices of . Since the degree of is , it follows that there are other adjacent vertices of . Since there is no in it follows that and are not adjacent to any vertex in . Moreover, except for there is no other vertex for which both and are adjacent. Let (, respectively) be the set of additional vertices to which (, respectively) is adjacent. The set contains vertices, and hence , which completes the proof of the theorem. ∎
Note, that there is an inequality in Theorem 20 since it is not always possible to find a regular graph which satisfies a given constraint on the number of edges in a subgraph with a given number of vertices. For example, there are no Moore graphs for some parameters.
The existence problem of FR codes with , for any given file size in the interval between and , is getting more complicated as increases. Some file sizes can be obtained by graphs with a given girth and by -Turán graphs with different ’s (see Theorem 8 and Theorem 15). However, not all the values between and can be obtained by this way. Moreover, an additional problem is to find the minimum number of vertices in an -regular graph such that the corresponding FR code has file size , for some . Note, that in some cases Theorem 8 and Theorem 15 together with Moore bound and Turán’s theorem can provide the answer to this problem, as was demonstrated in Theorem 18 and Theorem 20.
The following lemma shows that given an information about the file size for a given reconstruction degree , one can get some information about the file size for the reconstruction degree . In other words, by eliminating the existence of some induced subgraphs of size , one can prove the nonexistence of induced subgraphs of size which implies bounds on by Lemma 5.
If is a regular graph that does not contain , for all , where is a given integer, , then also does not contain , for all , where is given by
First, we prove the statement for the maximum value of . If there exists an induced subgraph in then in its complement there are edges and hence in there is a vertex with degree at least . However, is an induced subgraph , for some . To prove the statement of the lemma, it is sufficient to show that
If , for a given , , then , where is given in (16).
As we already saw, constructions of FR codes for given specific parameters can be formulated in terms of graph theory. We formulate the following problems in graph theory that provide some information about the number of nodes of FR codes with maximum file size and the existence of an FR code with a given file size.
Problem 1. Find the value of , , which is the maximum number of vertices such that any -regular graph with vertices, where is even integer, contains , for some .
Problem 2. Find the value of , , which is the minimum number of vertices such that for any , where is even integer, there exists an -regular graph with vertices which does not contain , for any but contains .
Problem 3. Let be positive integers such that and