I started using RAID 1 as a matter of course after suffering some major downtime due to hard drive failures on my desktop and home machines a long time ago. First, I used the software RAID available in Windows NT (or was it WIN2K?). As I started building machines with integrated (fake raid, as some people call it) RAID controllers, I took advantage of them instead of using software RAID which was, in my experience, susceptible to frequent rebuilds due to lock-ups and power outages.
In the last machine I built, I decided to give RAID 5 a try, mainly because the 320Gb drives were so cheap at that time (but I didn’t want to buy 4 or larger ones I guess?). I develop on this machine, so write performance is very important. I’ve been running RAID 5 for the last 10 months or so. I’ve never been particularly happy with the performance of this machine. It always spent a lot time hammering the hard drives and I noticed that things would get sluggish, even though my CPU utilization never cracked 5 or 10 percent.
Things finally came to a head when the family and I went snowboarding for spring break. I really wanted an offsite backup of two of my machines in case someone broke into our house and stole the computers. One is my development machine (RAID 5) and the other is our household server for photos, music, and movies (RAID 1) which also doubles as the second gaming machine for my son’s friends, believe it or not.
I had forgotten that I used RAID 5 on my development machine. I ran up to Best Buy and picked up two hard drives that I was planning to exchange with the existing hard drives in the machines. The existing HDs I removed would be my instant offsite backups. On the machine running RAID 1, this worked beautifully. On the machine running RAID 5, it obviously didn’t work at all. Since this was the morning before we were leaving, I barely had time to copy important files from my development machine to my laptop, which was coming with us and would serve as an offsite backup of sorts.
When we got back from vacation, I wanted to salvage the money I spent on the extra drive for the machine using RAID 5. I disconnected one of the drives in the RAID 5 array as the first step in trying to migrate to some different configuration. When I reattached it, my machine was unusable for 22 hours! I mean so slow it was truly unusable! Turns out, RAID 5 suffers up to 80% performance degradation when rebuilding. You can see the gory details here. Not only that, but on the ICH8 controller, you can’t migrate from RAID 5 to any other configuration. I even tried turning on array write caching to boost performance. This helped a little but be prepared for that hideous rebuild every time you hit the reset button or suffer a power outage.
Now here’s where I really saw how badly RAID 5 sucks. I still had the 500GB hd I bought that I was going to use to mirror my dev machine to. So I swapped that in to my household server machine’s RAID 1 array which had only 2Gb free (my wife takes an insane number of photos). 20 minutes later, the array is already rebuilt. Not only that, but the machine is actually usable while the array is rebuilt. I then bought a second 500Gb drive, swapped that in, and, viola — I had just increased the capacity of my household file server in less than an hour with no pain whatsoever.
Meanwhile, my dev machine is still on RAID 5. I do some research and realize that RAID 5 suffers from really bad write performance. Combine that with the fact that it’s literally unusable (at least on ICH8) while a rebuild is underway and it’s only advantage is space effeciency, and you must conclude that RAID 5 on the ICH8 (82801 SATA RAID) is a terrible choice for a development machine.
Now, how in the world do you recover from your horrible choice of RAID 5 on ICH8 without doing a complete reinstall (which is incredibly painful)? Not easily! Since I had RAID 5, the array was larger than the the individual drives that made up the array so you can’t just take a drive out of the array and copy over to it. So now you need to shrink an NTFS partition, assuming your usage of the array, like mine, is still less than the size of component drives.
If you weren’t using RAID 5, shrinking your partition would be free and easy using Ubuntu 7.1. Unfortunately, even if you go to the trouble of trying dmraid, it doesn’t work with RAID 5. After hours of research, I finally ended up buying Acronis Disk Director which worked perfectly. I was able to shrink my partition down to 200GB and then copy it to another drive.
Since I now had 6 320GB drives, I converted my newly liberated 200GB Windows XP NTFS active partition to a RAID 10 array. Just in the time it took me to write this post, the rebuild is already 40% complete and the machine has been completely usable during that time.
In conclusion, RAID 5 on the IC8H SUCKS!!! Don’t use it under any circumstances. Disk space is so cheap there’s no reason to use RAID 5 instead of RAID 1 or RAID 10 on a workstation. Either buy one more drive (RAID 10) or buy two bigger drives (RAID 1).