Disaster recovery codes: increasing reliability with large-stripe erasure correcting codes

  • Authors:
  • Kevin M. Greenan;Ethan L. Miller;Thomas J. E. Schwarz;Darrell D.E. Long

  • Affiliations:
  • University of California, Santa Cruz, CA;University of California, Santa Cruz, CA;University of California, Santa Cruz, CA;University of California, Santa Cruz, CA

  • Venue:
  • Proceedings of the 2007 ACM workshop on Storage security and survivability
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Large-scale storage systems need to provide the right amount of redundancy in their storage scheme to protect client data. In particular, many high-performance systems require data protection that imposes minimal impact on performance; thus, such systems use mirroring to guard against data loss. Unfortunately, as the number of copies increases, mirroring becomes costly and contributes relatively little to the overall system reliability. Compared to mirroring, parity-based schemes are space-efficient, but incur greater update and degraded-mode read costs. An ideal data protection scheme should perform similarly to mirroring, while providing the space efficiency of a parity-based erasure code. Our goal is to increase the reliability of systems that currently mirror data for protection without impacting performance or space overhead. To this end, we propose the use of large parity codes across two-way mirrored reliability groups. The secondary reliability groups are defined across an arbitrarily large set of mirrored groups, necessitating a small amount of non-volatile RAM for parity. Since each parity element is stored in non-volatile RAM, our scheme drastically increases the mean time to data loss without impacting overall system performance.