RAID-5 is the most popular choice for storage arrays today, as it is relatively simple to implement at the hardware level and is able to continue to operate in the event of failure of a single device. For many years RAID-5 has provided adequate levels of protection for highly reliable operation, but the growth in data storage requirements and the corresponding increase in capacity of arrays has the potential to impact the reliability of RAID-5 systems.
It is easy to see that larger data storage requirements leads to arrays with more drives and with more drives comes a higher probability of one drive failing. However, another problem is now becoming apparent - the rate at which an otherwise healthy occasionally drive fails to read a sector from the disk. These errors are known as "non-recoverable read errors" and the rate at which they occur is typically specified by the drive manufacturer as "non- recoverable read errors per bits read". This rate ranges from one error per 10^14 bits (12.5 TB) read for consumer SATA drives such as the Seagate Cheetah NS.
In order to rebuild the array after a drive failure, a RAID-5 array must read the entire contents of every remaining disk in the array. If the array consists of seven 1 TB disks, 6 TB of data would be read during this process, 1 TB from each of the six non-failed disks. If consumer SATA disks are used, one read in every 12.5 TB of data read is likely to fail, so there is almost a 50% chance of an unrecoverable read error during this process. When such an error occurs the RAID controller cannot continue the recovery process and the array will fail. When this happens, all is not lost. Our experienced data recovery experts can rebuild arrays which have failed in this way, often with same-day turnaround. Call us on 0800 999 3282 to discuss how we can get you back in business as quickly as possible.
RAID-6 improves on the reliability of RAID-5 by being able to tolerate failures on two disks simultaneously, thus considerably enhancing the reliability of the array. This enhanced reliability comes at the cost of additional hardware in the form of the additional disk per array, as well as increased complexity in the RAID controller.
In an ideal implementation, RAID-6 is only marginally slower than a RAID-5 array with the same capacity and identical drives. The minor performance penalty comes from the need to wait for data on one additional disk to rotate to the read heads. The complexity of the calculations required when writing data mean that real world implementations are often far from ideal and are limited in performance by the rate at which parity can be calculated, rather than the speed of the disks.
How RAID-6 works
While a RAID-5 array contains one additional drive, over and above those required to store the data, a RAID-6 array contains two additional drives. The capacity of an array consisting of N drives with minimum capacity C is thus given by the formula (N - 2) * C. For example, a RAID-6 array of seven 1 TB drives would have a usable storage capacity of 5 TB.
The following diagram illustrates how the data and parity blocks are distributed across disks in a RAID-6 system.