All the detectives showed up on time the next day, each hoping their boss had finished ‘the dirty work’ the day before.
The head detective had other plans.
“Boys, today we will look at the most complicated RAID setups ever – RAIDs 5 and 6. I’m sensing we are close to finding the culprit, and we have no time to lose. We’re not stopping for anything today – food or drink – until we find the guy who did it!”
This time he didn’t care to evaluate the loud grunts that followed.
RAID 5 looks like this:
It is very similar to RAID 4, except that parity data is distributed over multiple disks. For this reason it is also called Block-level striping with distributed parity. RAID 5 can take one drive failure only. When that one acceptable ‘death’ happens, performance is affected because data must be calculated from parity.
Why would anyone want to use a RAID setup so complicated? RAID 5 has a unique advantage over RAID 10 and RAID 1 – it offers better capacity – called Space Efficiency. If four drives of 1 TB each are added in a RAID 5 array, the capacity achieved is 3 TB, with a space efficiency of 75%. The same number of drives in RAID 1 will give 1 TB, and in RAID 10 will give 2 TB.
Some people consider this an acceptable compromise. RAID 5 is also widely supported, like RAID 0 and RAID 1. That’s no surprise – 2, 3 and 4 are almost obsolete.
RAID 5 offers excellent read speeds, similar to RAID 0, which is why it is very popular for servers that stream media. Write performance is a big question mark, with nowhere near the performance of other RAID systems. This is mainly due to the parity calculations that need to be performed and additional parity data written along with the ‘regular’ data.
RAID 5 is what people opt for when RAID 1 isn’t enough and a better space efficiency is needed. The flip side is that, by adding more drives, one increases the chances of multiple drive failures, which is the death of a RAID 5 array.
If RAID 5 needs a minimum of 3 drives, RAID 6 needs a minimum of 4. And it’s called Block-level striping with double distributed parity. What’s that?
RAID 6 gives us an additional drive failure when compared to RAID 5.
The maximum number of drives that can fail without data loss in an array is called its Fault Tolerance. RAID 5 has a fault tolerance of 1. RAID 6 has a fault tolerance of 2.
Double-parity gives the Controller additional time to rebuild the array without the data being lost. It does this by doubling the parity information to different drives, thereby almost halving the risk. But because of this, it needs an extra drive compared to RAID 5.
In our 4 TB example, a RAID 6 would give us only 2 TB. However, as the number of drives increase, the difference between RAID 5 and RAID 6 as far as space efficiency is concerned decreases, and almost becomes negligible. The read speeds are similar to RAID 5, while the write speeds are slightly worse, the difference which again reduces as the number of drives increases.
RAID 6 is used for reducing the risk factor, with other requirements being similar to a RAID 5 array. The rule of thumb (it’s a flimsy rule, really) is to use RAID 5 for smaller arrays and RAID 6 for larger arrays – but there are exceptions.
“What do you think, boys?” asked the head detective. “I’m of the opinion that none of these guys are guilty.”
“We feel the same, sir.”
“I think it’s time to talk to the OS again.”
The OS wasn’t happy at all to see the detectives back at his office.
“What can I do for you gentlemen?”
“Mr. Operating System, we’ve been around to all the small RAID arrays you have here at Hotel Network, but we feel there’s something you’re not telling us.”
“I haven’t kept anything from you.”
“Yes you have! What is the RAID level used for your NAS?”
Damn, this detective was smarter than he looked!
“I confess! I confess! Our NAS is on RAID 50!”
A RAID 50 combines the striping of RAID 0 with the distributed parity of RAID 5. It needs at least 6 drives.
Each RAID 5 set can only tolerate one drive failure, it is common to have RAID 50 systems with ‘hot spares’ ready to take over when a drive fails. This is how Hotel Network continued running when the drive died.
RAID 50 is RAID 5 with better write performance and fault tolerance. It is the recommended solution for arrays that need a high fault tolerance without sacrificing space efficiency. This is at the expense of rebuilding time, which takes quite some time.
The head detective heaved a sigh of relief. The case was finally cracked. Unfortunately, there was no murderer.
“So how did our hard drive die?”
“Wasn’t he overworked? Didn’t the stress of performance do him in?” the detective thundered.
The OS hung his head in shame.
“Shut down this joint.”
“Only for today. Let them learn their lesson. Think of it as respectful silence for the duly departed. You may reboot tomorrow.”
Before shutting down Hotel Network for the day, though, all the detectives had another round of sodas. They hoped they didn’t have to come back to his hotel ever again, unless it was for free food and booze.
Links for Further Research: