If you only have 3 hard drives, your options are:
- Two drives in a raid 1 mirror, plus one extra drive. You can use the extra drive for backup archives so that if you delete a file, you can restore it from the backup.
- Two drives in a raid 0 stripe, plus one extra drive - the raid 0 will have no redundancy, so that's a dangerous option.
- Three drives in a raid 0 stripe - no redundancy, so that's dangerous
- Three drives in a raid 5 stripe - redundancy, but not too fast in terms of writes
If you could go up to 4 drives, then you can have one big raid 10 (or 0+1 stripe) that will give you fast reads/writes, plus redundancy across the whole thing. That'll make the most sense from an ease-of-management perspective.
The wikipedia article on RAID levels is actually quite good:
http://en.wikipedia.org/wiki/Redundant_array_of_independent_disks
BIOS-based RAID is little more than a poorer version of software RAID, from everything I've read and encountered. Plus if your mobo is fried, you usually have to replace it with a similar mobo, due to the way that BIOS will format the disks to track the volumes. This is a DEFINITE consideration for recovery of data, as you can't just slap a mirrored disk into another system and pull data off it if the system can't see the volumes. There are also issues I've encountered where something will zap the config information from the BIOS and after a reboot it can't find the volumes anymore!
Software RAID on Windows tends to have a reputation for working well enough for redundancy, but not working well performance-wise, but from my research it looks like it is usually RAID 5 in software with Windows that you really take a hit. Linux-based software RAID is regarded as mature and very usable; often on-par with hardware schemes.
Hardware-wise, I've used a few kinds of Hardware RAID (3Ware and PERC) and I've had one disaster with it and a couple save-your-arse situations. Hardware RAID usually also allows for things like physical notifications (blippy lights and labels on ports) so you don't need to figure out which drive is failed and they tend to keep the underlying mechanisms hidden from the OS, so it's less of a pain in the a__ to configure and maintain. Some cards like 3Ware actually have some nice features; the hardware cards additionally tend to offer the best performance. It's also nice if they support hot-swap of drives, depending on your server usage scenario.
I think in your situation it depends on what this server is going to be used for. Even a relatively slow RAID with light use isn't a handicap. If it's something getting hammered...database server, for example, or busy mail server...go hardware. If it's light to medium use, use Windows software RAID, especially if you're not comfortable with the hardware version.
But generally speaking...avoid the BIOS RAID like the plague for a server or critical system.
Either way, make sure you have a recovery plan (backup) that allows full metal recovery...RAID is not a backup :-)
Best Answer
While some OS might have the driver for that card built into the kernel, it is generally a bad idea to use these controllers, there's a good reason they are known as "fakeraid". If you can't afford a proper raid controller with it's own processing, cache and a BBU, just use software raid in the OS - the disks will be transferrable and hardware independent, while with fakeraid, there are no real advantages, besides having raid configuration in a separate menu instead of the OS