Hacker News new | ask | show | jobs
by speakeron 1986 days ago
RAID 10 is more efficient (if that equates to performant) than RAID 6, but not more durable. In fact it's less.

As an example, a 4-disk array (which has the same capacity in both RAID 6 and RAID 10) has 4 2-disk failure modes. RAID 6 can handle all of these failure modes without losing data, whereas RAID 10 can only handle 2 of them.

1 comments

Efficiency is how much overhead you have. RAID 10 has 50% efficiency (50% of your storage is used for data), RAID 6 has N/N+2 efficiency. Since RAID 10 means using 4 drives, RAID 10 is never more efficient than RAID 6 for the same number of drives.

The three main things we can optimize for are storage efficiency, I/O performance, and data durability. For most situations, RAID 6 is not Pareto-optimal. In other words, you can come up with solutions that have better storage efficiency, better I/O performance, or better data durability, without sacrificing anything.

The only reason you’d use RAID 6 is because it’s easy to use. It’s measurably worse on any other axis. Combine this with various low-quality RAID implementations and RAID is even worse. Software RAID in the Linux kernel is fairly robust but there are many low-quality hardware RAID implementations.

Efficiency is not just drive efficiency but controller time. The 4 disk RAID1_0 array may have the same drive space overhead as the RAID6 version, but it may be much slower due to the controller overhead.

One of the often overlooked aspects of RAID is that the more complexity there is in the controller the higher the risk of losing your data due to hardware/firmware/software error. The worst part is these errors often don't appear until your array is already compromised in some way, so everything is fine until a single disk failure triggers a previously unknown bug that causes the rebuild procedure to clobber all of the data on all of the drives.

I've known some professionals who use RAID1_0 whenever they can get away with it because they don't trust RAID controllers to handle anything more complex.

> Efficiency is not just drive efficiency but controller time.

Sorry, I should be clear. When I say efficiency, I mean “storage efficiency” only. Controller time I count as a part of performance. Perhaps my comment makes more sense with that definition in mind.

RAID 6 is pretty darn simple, I'm not sure what controller issues you'd have.

That said, RAID 10 is great for many professional use cases. It's very fast, scores well on reliability, the cost premium isn't too bad, and you need backups anyway.