Sunday, March 1, 2009

Erasure Code

Erasure code is an algorithm that divides a piece of data information into n block and transforms them into n+m block so that any n block from these n+m block can be reconstructed into the original information.
One of the advantages of such a scheme is to provide efficient redundancy for preservation purpose. For example, given 1k data, and each site has 1% probability of broke down in anytime, to make the data have 99.9999% availability using normal backup scheme, we need 4 1k space locate in different physical storage disk, plus the network bandwidth that transfer the data back and forwards. Using erasure code to achieve same availability, we can break the original 1k data into 14 pieces 0.1k chunks, and put them into 14 different locations which has 1% down possibility.