Thursday, 24 February 2011

On models in data recovery

The data recovery (be it filesystem parser or RAID recovery) software does not work based on the actual data alone. The equally important ingridient is the model of the correct state of the device being recovered.

Take a RAID0 for example. The model of the RAID0 would include stripe size, disk order, and first disk. There are often some less than obvious requirements, like "a block size must be a power of two". This works just fine until someone decides to implement a software RAID with 3 sectors per block. The recovery software then fails because its internal model of a "correct" RAID does not match the reality any longer.

Similarly with RAID5, the minimum practically useful model includes a notion of a possibly missing disk, to be reconstructed from the partity data. If you throw in a blank hot spare, the recovery fails because you just went outside of the design envelope - the model does not account for a possibility of a blank drive being included into the disk set for recovery.

No comments:

Post a Comment