Raid level guide - Tech Help Blog
12th May 2022
Raid or "redundant array of independent disks" is the process of combining multiple hard drives or solid state drives into one combined volume. When configuring raid arrays there are a multitude of different configurations you can work with and they all have their own pros and cons. This guide will go over all the different commonly used configurations and the benefits and drawbacks of each one.
- Raid 0: Raid 0 or “deathwish raid” as I like to call it is a raid array where the data is spread across all disks in the array in a method called striping. What this effectively does is makes it so each disk is simultaneously reading and writing the data across the entire set. The benefits of this is it’s the fastest raid level bar none, the downside of this method however is because the data is spread across all the disks in the array if even one disk fails you will lose all of your data. Only recommended for situations where storage speed is the most important factor and good backup and recovery options are available for quick recovery in the event of drive failure.
- Raid 1: Raid 1 or Mirror array is one of the most common and basic array types available. It is basically just two disks grouped together and both containing the same set of data. If one fails the other still holds the same information so there is no data loss and you can replace the failed disk and it will copy the data off the remaining disk to the newly replaced disk. You will only get the storage space of one of the drives since the data being held on each drive is identical.
- Raid 2, 3 and 4 are no longer used and are completely depreciated so while they do exist there really is no point in covering how they function anymore as no controllers support these levels anymore.
- Raid 5: Raid 5 is the start of the parity raid configurations. Raid 5 requires a minimum of 3 drives and can allow for 1 drive failure and still allowing the array to be rebuilt as long as no additional drives fail. The way this is able to be achieved is there is something called parity data that is spread across all of the disks in the array. However because of the parity data you do lose one drives worth of space from the total array size as one of the drawbacks. When a drive fails and needs to be rebuilt into the array the raid controller can use the parity data on the remaining disks to extrapolate the data that was on the failed disk and repair the array. As said before though if another disk fails before you are able to rebuild the first failure that will result in data loss. The other downside of raid 5 is there is a fairly high write penalty from the calculations that need to be performed to keep the parity data consistent. Because of this potential for data loss with more than one failed disk raid 5 is no longer recommended by most OEMs for anything larger than 1-2TB when dealing with hard drives. The reason being rebuilds of extremely large raid 5s can take upwards of days for the rebuild to occur and if any of your remaining drives fail or run into a URE(Unrecovered read error) it will fail out the array. Large raid 5s with SSDs however still work just fine as the danger of URE or additional drive failure is much lower and the rebuild process is much quicker.
- Raid 6: Raid 6 is basically the same concept as raid 5 however rather than only allowing for one disk failure it allows for a second drive failure. It also requires 4 disks minimum vs 3 disk minimum for raid 5. It has the same functionality of using parity for redundancy as raid 5 so suffers from the same issues such as long rebuild times and large write penalties dealing with the parity. It also loses 2 drives worth of space to have the two drives worth of parity vs the 1 of the raid 5. All that being said Raid 6 is considered a fair deal safer than raid 5 because of the ability to lose an additional disk making the likelyhood of a failure during rebuild much more unlikely.
- Raid 10: Raid 10 is the start of what are called nested raid levels which are basically combining multiple raid levels together. Raid 10 is the combination of raid 1 and 0. Which basically means you’re striping across the drives as you would with a raid 0 but along with that there is a mirror of each drive that is striped so you have redundancy of a mirror with the speed benefits of raid 0. The biggest draw back is you lose half of the space of all of the drives because of the mirroring. Raid 10 is generally considered the best raid level for production data assuming you can deal with the loss of drive space from the mirroring. The other big benefit of raid 10 is the rebuild of a failed drive simply needs to copy the data of the matching mirror pair. Whereas with raid 5 and 6 the rebuild process requires the parity data of all the disks in the array which is what results in the extremely long rebuild times on parity raid systems.
- Raid 50: Raid 50 is the next nested raid level which is a combination of raid 5 and 0. This method basically stripes multiple raid 5s together. The benefit of this is by having multiple raid 5s in the array it allows you to potentially have multiple drive failures as long as the drive failures are in different raid 5s. So if you have a 9 drive raid 50 with three raid 5s of three drives each you can potentially have three drives fail as long as it’s one out of each raid 5 array. That being said the downside is you lose one drives worth of space for each raid 5 in the raid 50 so if you have four raid 5s combined in your raid 50 you will lose 4 drives of space as each raid 5 loses one drives worth of space because of the parity data. Raid 50 is still not recommended for extremely large arrays but is safer than raid 5 on its own.
- Raid 60: Raid 60 as you have probably put together is the combination of raid 6 and raid 0. Just like raid 50 before it, it is striping multiple raid 6s together. As with the raid 50 because of the striping of multiple raid 6 arrays it allows for potentially more drive failures with the drawback of loss of more drive space.