I’m never using RAID again

6 Comments
Posted November 6th, 2008 in Hardware. Tags: .

Hard drive failures have taught me to be very careful about backing up my data. Currently, I use a Redundant Array of Independent Disks (RAID) and Super Flexible File Synchronizer (SFFS) to provide two levels of data redundancy. I use RAID 1 (where two hard drives are exact copies of each other) which allows one drive to fail without shutting the system down. I don’t like the native backup utilities in Windows XP, so I bought SFFS to automatically backup my main machine’s data to a secondary computer every morning at 4AM.

This is the second PC I’ve built with a RAID 1 array. It’s also the last. RAID certainly has a place in the server environment where downtime is unacceptable, but I’ve come to believe that it doesn’t belong in home computers. Instead, I recommend building or buying a computer with a single internal hard drive and an identically-sized external hard drive. The external drive should be synchronized with the internal one at regular intervals, but whenever it’s not being synchronized it should be kept unpowered and unplugged at a different physical address (e.g. your office or a safety deposit box).

My primary reason for abandoning RAID is that it adds complexity which often results in unexpected conflicts. For example, in 2005 my first RAID machine inexplicably and spontaneously split its (single) RAID 1 array into two separate and degraded RAID 1 arrays. I asked for advice on a forum, and was deluged with five pages of responses like “Hey, that happened to me too!”. Unfortunately, no one seemed to know what to do, so I replaced a lot of components, reinstalled XP and prayed to Zeus that the computer wouldn’t repeat this bizarre behavior. (It did anyway. Screw you, Zeus!)

Sadly, I didn’t recognize this bad omen for what it was. My next PC also included a RAID 1 array, but a different motherboard with a better software RAID controller seemed to prevent the “duplicating RAID” problem from reoccurring. Life was good.

…until I tried to install Kubuntu 7.04 alongside my XP partition, that is. Once I finished the install process, Windows failed to boot! When I turned on my computer, I simply saw a chilling “Error loading operating system” error. Being a Linux noob, I immediately appealed for help. It turns out that most Linux distributions have spotty support for software RAID, and none of it works out of the box (have things changed?). Again, I had to reinstall my operating system from scratch.

Trying to install Kubuntu onto a software RAID array was my dumb mistake- I could easily have googled the issue and discovered this lack of support for myself. It just never occurred to me that it would be a problem, and I guess I thought that Kubuntu would fail gracefully instead of nuking my MBR (or whatever happened) in the process of screwing up the installation. And lest you think I’m slamming Linux, I’ve had Ubuntu 7.04 running on my laptop for almost two years. It was a cinch to install and has been rock-solid stable all that time. And honestly, if it weren’t for the fact that I’m a gamer, I would have switched all my machines over to some flavor of Linux long ago.

Furthermore, I don’t plan on using RAID even after the software support is perfected because it has more fundamental deficiencies. First of all, RAID only protects against physical hard drive failures. A short circuit in the power supply or a surge in the electrical power could easily damage both drives. A virus that wipes your hard drive will erase both drives. If a critical file is overwritten, it’s overwritten on both hard drives. If your home is destroyed by fire or flood or wind, both drives are destroyed. If someone steals your computer, they automatically get both drives. RAID is simply not a way to backup your computer.

The only real advantages of RAID 1 are slightly increased reading speed (right?) and the fact that the computer won’t shut down even if one of the primary drives fails. But for home users I doubt this feature is worth the extra power required to run both drives, the beefier power supply needed to handle that current, the added cooling requirements and the extra space needed inside the case for the second drive.

Keeping the system running after one hard drive has failed is also riskier than most RAID manufacturers admit. They often say that someone using RAID 1 is very unlikely to have both drives fail at the same time. Both drives failing simultaneously would destroy the data in the RAID array, but they don’t actually have to fail simultaneously to destroy the data. The second failure merely has to occur before the first failed drive is replaced.

At first I thought this was a fairly weak objection because I can usually get a replacement drive from Newegg within a couple of days. Since hard drives don’t fail that often, another failure within days of the first would be an astonishing coincidence, right?

Well, not really. The problem is that RAID works best if both drives are the exact same model from the same manufacturer. They’re also attached to the same power supply in the same case, cooled by the same fans. Their read/write patterns are nearly[1] identical and their duty cycles are the same. As a result, the failure rates of the two drives are not statistically independent.

What this means is that if the first drive fails, the second drive is likely to fail too. For example, suppose one drive fails because the computer’s main fan fails, causing the case to heat up. The other drive is likely to fail too because it’s being exposed to the same high temperature. More subtly, the identical wear patterns increase the chance that both drives will fail simultaneously. Furthermore, two drives running 24-7 will probably require replacements around twice as often compared to keeping the second drive turned off except for weekly backups.

Once again, I recommend building or buying a computer with a single internal hard drive and an identically-sized external hard drive. Make sure you synchronize the two drives using a program that only copies the files that have changed since the last synch, otherwise it will take weeks instead of minutes. In Windows XP I prefer SFFS, and in Linux rsync is probably your best bet.


Footnotes

  1. I say “nearly” because as far as I understand it, even RAID 1 performs striped reading (right?). This speeds up reading data because at any given moment each hard drive is reading a stripe of data that the other drive is skipping.

    However, reading isn’t twice as fast because of overhead (anyone know a realistic figure?) and rarely makes a difference to me because modern hard drives are fast enough to play HD video already. It helps gamers by reducing the time needed to load a level into memory, but shouldn’t affect the framerate or performance of the game. I think this might help people who want to stream multiple files at once off the disk, though?↩ back

Last modified February 6th, 2012
.
    
.

6 Responses to “I’m never using RAID again”

  1. I’m right there with you, every time I have attempted to use SATA RAID for anything it has been more pain than product. the real world numbers just dont justify having two hard drives doing the work of one…its monetarily wasteful and driver support, even now is shoddy at best. Just having RAID capability on a MOBO (when it first came out—04-05ish) was reason enough to avoid the MOBO alltogether…the weak points have always been with the RAID chipset—trying to take over or some junk like that—

    good article, and thanks for advertising on my website.

    and I think im stealing the DH4 thing from you, thats awesome

  2. RAID at least wins out on acronym creation, it’s much easier to say than SFFS. Go on try it!

  3. Are we talking about hardware or software RAID?

    I agree that RAID is doomed to fail if the following conditions are true:
    1) Your RAID hardware is cheap and/or really dumb
    2) Your OS doesn’t know the RAID exists (because it’s abstracted-away by the hardware) and therefore doesn’t know how to resolve issues with it.

    Both of those conditions apply to most home computers, but neither apply to software RAID. I’ve been using software RAID1 on my PowerMac G5 (converted into a media server) for 3 years now with a couple off-the-shelf 300GB Seagate drivers. I’ve never even had the slightest hint of a problem.

    With my last array (set up in a similar fashion, with a slightly older version of OS X), one of the drives failed– but the OS recognized the failure, and guided me through the process of replacing the drive and rebuilding the array. Again, a flawless execution, even with a hardware problem.

    In short: don’t give up on RAID because you have crappy RAID hardware; use your OS to create and manage the RAID array. It’ll do a much better job of it.

    • You’re right- my bad experiences revolved around poorly implemented software RAID.

      But I still don’t see any advantage to RAID other than that I could seamlessly keep my computer running after a hard drive failure (at the risk of the other drive failing before the first is replaced). It may offer slight reading speed increases if I’m right about reading being striped even in RAID 1– but I can’t see that being a benefit to me.

      Also, it seems like a much better idea to keep one hard drive in my office (physically in a different city) than in the same computer case for the redundancy reasons I listed. It also seems like the extra power consumption and wear and tear on the second drive is not worth the miniscule added benefits.

      At least, it doesn’t make sense for me. Someone doing uber-advanced video editing may need a RAID array to take advantage of the higher reading speed.

.