Zigzag codes: MDS array codes with optimal rebuilding

Itzhak Tamo*, Zhiying Wang, Jehoshua Bruck

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review


Maximum distance separable (MDS) array codes are widely used in storage systems to protect data against erasures. We address the rebuilding ratio problem, namely, in the case of erasures, what is the fraction of the remaining information that needs to be accessed in order to rebuild exactly the lost information? It is clear that when the number of erasures equals the maximum number of erasures that an MDS code can correct, then the rebuilding ratio is 1 (access all the remaining information). However, the interesting and more practical case is when the number of erasures is smaller than the erasure correcting capability of the code. For example, consider an MDS code that can correct two erasures: What is the smallest amount of information that one needs to access in order to correct a single erasure? Previous work showed that the rebuilding ratio is bounded between 1/2 and 3/4 however, the exact value was left as an open problem. In this paper, we solve this open problem and prove that for the case of a single erasure with a two-erasure correcting code, the rebuilding ratio is 1/2. In general, we construct a new family of r-erasure correcting MDS array codes that has optimal rebuilding ratio of 1r in the case of a single erasure. Our array codes have efficient encoding and decoding algorithms (for the cases r=2 and r=3, they use a finite field of size 3 and 4, respectively) and an optimal update property.

Original languageEnglish
Article number6352912
Pages (from-to)1597-1616
Number of pages20
JournalIEEE Transactions on Information Theory
Issue number3
StatePublished - 2013
Externally publishedYes


  • Distributed storage
  • RAID
  • network coding
  • optimal rebuilding


Dive into the research topics of 'Zigzag codes: MDS array codes with optimal rebuilding'. Together they form a unique fingerprint.

Cite this