It all boils down to your data – and how valuable it is. If you are running several SANs full of drives then going RAID10 might sound very expensive. On the other hand – if you run a small shop (from one server to a 2-3 SAN installation) – not going RAID1 or RAID10 is simply a bad idea.
Drives are getting better and better and URE (Unrecoverable Read Error) factors are also getting better – but still, during a rebuild of a RAID5 array the drive can say: “sorry, not this time”. For those that are curious why there is so much fuzz behind it – well – the theory is relatively simple. RAID5 is “block-level stripping with distributed parity” and is able to sustain 1 drive failure. Lost data is then computer from the distributed parity stored on all n-1 drives. Should you encounter an URE – and your RAID controller (could be also a soft controller) puts a cross on that drive – you have 2 failed drives (and hello – RAID5 can sustain only 1 drive failure).
Another issue is that during the rebuild operation the performance of a given RAID5 system is severely degraded (all drives are read to get the missing data). During normal operation it comes also with a write penalty – something one should have in mind while setting up a busy database system (with many writes/updates to come).
“If it’s all that bad – then why so many people still use it?” – the answer is pretty easy: cost. RAID5 offers (1-1/n) space efficiency as compared to RAID1 (1/n) (RAID10 is a “stripe of mirrored drives”). As it was pointed out in the beginning of this article – if you have a load of SANs it’s a non trivial amount of money to upgrade your system to RAID10 (especially if your SANs are loaded with data). On the other hand these SANs very often have pretty decent controllers that protect you also from a few other dangers of RAID5, like the infamous write hole (this is why better RAID5/RAID6 controllers are battery backed – and this is why pulling the plug from your SAN might be a very bad idea).
Recently I heard a comment “but RAID6 is better”. Yes, it’s better because it protects you from 2 drive failures. I would say the conclusion should be easy – if you can manage it cost-wise do not hesitate and simply go for RAID1 or RAID10 for larger drive farms. In the long run this will simply pay back. And if you think “yeah, UREs… imagination” – see the screenshot below. I encountered an unrecoverable read error while resyncing a RAID1 array. It can happen.
PS For more details about RAID I suggest reading the following articles on Wikipedia (good starting point):