Erasure coding is an error correction technology that employs algorithmic “codes” to calculate parity data. Erasure coding mitigates the potential of data “erasure” (e.g., loss in transit, or loss at rest). This provides data resiliency in a manner that is more efficient than mirroring.
Erasure coding generally takes place in software above the hardware storage device layer. Erasure coding is suitable for large-scale, distributed storage systems that require a configurable balance between storage efficiency, performance, and rebuild speed.

Erasure coding is often used
Simple erasure coding algorithms are used for RAID parity calculations (e.g., RAID 5 and RAID 6), where a storage array must have some ability to self-heal in place.
Modern erasure coding algorithms provide highly-configurable and scalable balances between available capacity, performance, redundancy, integrity validation, and rebuild time.
Erasure coding is often implemented using Reed-Solomon error correction algorithms.