01-07-06 07:46 AM
Hi,
I am planning to build system where it is possible to create 100's of
array(raid 5) at a time, that means some of them can go faulty even
before init-task is complete.If INIT hasn't completed then there is no
way to rebuild the array(?).
Lets say raid-subsystem does things this way.
We bypass init.
Array is RUNNING The stripes are always cached in memory.
a)whenever a cache miss happens we read the whole stripe(except
parity).
b) whenever we write to the disk we recompute parity based on the data
and write it to disk.
c)Now if a single disk fault happens the array is in REBUILD REQUIRED
state,for every read we recompute the parity and give the data back.
The assumption here I make is that reads wont happen for locations
where writes haven't happened. The exceptions are for boot sector and
partition tables.
I wanted to know if this is the right approach am I overlooking some
aspect?
Regards,
Amritanshu Johri.
[ Post a follow-up to this message ]
|