I store many files of different lengths in a block-oriented medium (fixed size, for example 1024 bytes). When reading a file, each block will either be absent or fixed (no errors in bits, etc.). Missing blocks are random, and not necessarily any sequence with missing blocks. I would like to be able to collect the entire file if the number of missing blocks is below a certain threshold, which probably varies depending on the encoding scheme.
Most of the literature I've seen deals with bit error sequences in a data stream, so it seems they will not be applied.
A simple approach is to select N blocks at a time, and then save the block containing XOR from N blocks. If one of the N blocks is missing, but the control block is missing, then the missing block can be restored.
Are there error correction schemes that work well for this problem? References to the literature or code are welcome.
source
share