Transforming parity drives into data drives
NZFS RAID implementations that use dedicated parity have a pretty neat feature which is to transform parity drives into data drives when the RAID is degraded.
This feature is available to the Transparent RAID feature too.
A RAID is said to be degraded when it has lost a data drive.
A RAID is said to be fully degraded when it has lost as many drives as it has parity drives and at least one of those failed drives is a data drive.
If all the failed drives are parity drives, the RAID is just unprotected and not degraded.
In NZFS and in supported RAID layouts (including Transparent RAID), users have the option of transforming parity drives into data drives and essentially recovering the failed drives without having to purchase new drives.
This feature comes in handy when there are no spare drives on hand to recover the failed data drives. For some users it might take days or weeks before replacement drives are ordered and delivered.
Rather than running in degraded mode, the user might be better off running either in non-RAID mode (in the case of a fully degraded RAID) or in protected RAID with less parity drives (in the case where there are more parity drives than failed drives).
Later and once the user gets the replacement drives, he/she can add them to the array as parity drives and go back to protected RAID mode or increase RAID tolerance mode.
RAID in degraded mode (2 strikes):
- No longer protected (when fully degraded) or reduced protection (when partially degraded)
- Performance hit from having to reconstruct the data live
RAID where parity drives are transformed into data drives (1 strike):
- No longer protected (essentially un-RAID’ed) or running in a new RAID mode with less parity drives (less protection)
Fully degraded RAID
So, let’s say a given RAID has two parity drives and four data drives. If two drives are lost in this array, no data is yet lost. However, any additional drive loss would lead to data loss. The RAID is essentially unprotected and running on life support. The data from the failed drives is being reconstructed live, which considerably slows down the performance of the RAID.
When the process of transforming parity drives into data drives is done, the RAID will no longer be protected just like it is no longer protected when degraded.
However, the user now runs without any performance loss since all the data is fully recovered and there is no need to reconstruct anything live.
Partially degraded RAID
When the RAID is partially degraded, this feature is less important but still has some relevance nonetheless.
So, let’s say a given RAID has two parity drives and four data drives and that only one data drive is lost.
The user has the option of transforming one of the parity drives into a data drive and going from a two parity setup to a one parity setup.
This would be like going from RAID6 to RAID5. In both cases, there is reduced protection. However, in the migrated case, there is no performance hit compared to the partially degraded RAID case.
Now, transforming a parity drive into a data drive does not come without risk since the parity drive is essentially being overridden.
It is analogous to sawing the branch you are sitting on or digging below your own feet.
However, NZFS solves that issue elegantly so as to minimize the risk on the operation.
Not to be confused with NZFS’s powerful RAID migration feature
NZFS has a powerful RAID migration feature that can take a RAID and convert it into another RAID level.
For instance, a RAID 5 (degraded or not) can be converted to a RAID 0.
This example is important to grasp. Transforming parity drives into data drives is only supported in NZFS for RAID layouts where there is dedicated parity. For distributed parity like RAID 5 and RAID 6, a similar conversion can be executed; though the process is quite different. Essentially, a degraded RAID 5 can be converted into a RAID 0 using the remaining drives.
The end result is the same as transforming a parity drive into a data drive, but the process and semantics are different.
The almighty and powerful NZFS RAID migrator will be discussed in a different topic.