minimum-storage-regenerating-code · limited · also MSR code

Minimum-storage regenerating code

A minimum-storage regenerating code minimizes repair download at the minimum-storage point for a specified recovery threshold and helper count.

With k fragments sufficient to recover the data, n stored fragments, d helpers and S bytes per fragment, symmetric single-loss repair downloads dS/(d-k+1), where k <= d < n. This budget is conditional on a suitable code and repair procedure, not a property of every MDS implementation. [1]

Functional repair preserves recoverability but can change a fragment's contents; exact repair reproduces the lost fragment. Clay provides a practical exact-repair construction. Lower download volume does not by itself establish lower physical disk reads or shorter recovery time. [2]

Relations

related
Maximum distance separable code, Subpacketization, Repair locality, Repair-read amplification

Citations

  1. Dimakis et al. Network Coding for Distributed Storage Systems. IEEE TIT 56(9), 4539-4551 (2010), DOI 10.1109/TIT.2010.2054295; equation 5. (accessed 2026-10-18)
  2. Vajha et al. Clay Codes: Moulding MDS Codes to Yield an MSR Code. FAST 2018, 139-154; sections 2, 4 and 5. (accessed 2026-10-18)
  3. Ceph: CLAY code plugin, development documentation; helper ranges, sub-chunks and deprecation notice. (accessed 2026-10-18)

Further reading

  1. Hesela: Local repair is not whole-node repair (accessed 2026-10-18)
Sources & caveats
  • Theory and a historical implementation are distinguished. The Ceph development documentation marks Clay deprecated since Umbrella, with removal planned for Vampire; check the deployed release. [3]

JSON: /data/terms/minimum-storage-regenerating-code.json

Published by Hesela team · Updated

Report a correction · Editorial standards · Reuse guidance

Cite this page
Hesela team. Minimum-storage regenerating code. Hesela. 2026-10-18. https://hesela.dev/terms/minimum-storage-regenerating-code/