Question 17: Silent data corruption
Naina has built her own storage system for storing her extensive music and movie collection. She has stored two copies of her data on two disks. While she is happy about the level of redundancy, she is concerned about silent data corruptions. There are a lot of movies in her storage system and many would not be played for years altogether. She is concerned about the unused data from those movies getting silently corrupted from both the disks, rendering the replication useless.
Can you suggest a mechanism that Naina can employ to increase her confidence in the reliability of her storage system?
Solution
Naina can introduce scrubbing to increase the reliability of her storage system. A background task can periodically read all (or a randomly chosen subset) of the data to check that it is not corrupted. If the data is found to be corrupted, the scrubber can reconstruct the data from the replica (assuming that the replica is not corrupted).