Introduction to RAID 6 and RAID 10
RAID stands for Redundant Arrays of Independent Disks, which is usually used on servers. Its principle is to combine multiple cheap disks into a disk array group, improving the read and write performance of the disk.
RAID has many disk combination schemes, including RAID 0, RAID 1, RAID 10, RAID 5, RAID 6, etc. In this post, I will talk about RAID 6 vs RAID 10. Hence I will only introduce the two RAID schemes in this part.
RAID 10, also called RAID 1+0, is a combination of RAID 1 and RAID 0.
- RAID 0 combines at least two drives into a big volume. When it writes data, the data will be distributed to multiple disks for writing. When it reads data, these disks will also cooperate to complete the reading request. This will improve performance and enlarge storage but it will also increase the risk of data loss.
- RAID 1 is composed of an even number of drives. Half of these drives are used to back up the other half drives, making data safer but slowing down the writing speed and reducing a half of useable space.
Then, how does RAID 10 combine RAID 0 and RAID 1? Please look at the following picture:
RAID 10 uses at least four drives (an even number). It first creates multiple RAID 1 structures and then uses these RAID 1 structures to compose a RAID 0 structure. By combining RAID 1 and RAID 0, RAID10 can not only improve data access speed, but also provide data redundancy (data safety). Unfortunately, it will also reduce a half of useable space.
RAID 6, whose full name is “independent data disks with two independent distributed parity schemes”, has two independent parity data blocks. It can recover data even when any two disks fail. Its structure is shown like the following picture:
RAID 6, whose full name is “independent data disks with two independent distributed parity schemes”, is composed of at least 4 drives. As the above picture shows, when the RAID 6 volume stores data, 2 disks are used to store 2 independent parity data blocks (P and Q) and other disks are used to store data as RAID 0 does.
If data on 2 disks is lost, it can be recovered through the following parity formulas (taking A1, A2, Ap, and Aq in the above picture as an example):
Ap = A1 ⊕ A2
Aq = GF(A1) ⊕ GF(A2)
RAID 6 vs RAID 10
After reading the above content, you may learn something about RAID 6 vs RAID 10. In this part, I will make a brief conclusion.
1. Disk Space Utilization
In this aspect, RAID 6 is better than RAID 10. RAID 10 only utilizes half space of the disks (50%), because the other half storage is dedicated to protection (backup). As for RAID 6, its disk utilization is 50% or more. The proportion of usable space will increase as you add more drives, because the RAID 6 volume only uses 2 disks for data protection.
In this aspect, RAID 6 is also better than RAID 10. RAID 6 can ensure the normal operation of the server when any two disks fail simultaneously, but RAID 10 cannot. If the two failing disks are located in the same RAID 1 structure, the RAID 10 can’t recover data.
In this aspect, RAID 10 is better than RAID 6 because RAID 6 uses a complicated parity algorithm. If you want to know details about RAID 6 vs RAID 10 writing speed, reading speed, and data rebuilding speed, please read this post: RAID 6 vs RAID 10: Which One Performs Better and Faces Lower Risk.
4. Hardware or Software Requirements
In this aspect, RAID 6 has higher requirements. If you want to compose a software RAID volume, RAID 6 will consume more PC resources (especially CPU) than RAID 10, because RAID 6 has computational overhead.
If you are making hardware RAID, RAID 10 doesn’t need special hardware, but RAID 6 requires specially designed controller hardware.