RAID is a wonderful way to achieve faster disk access speeds, data security or both.  Here’s some ways to get the most bang for your buck out of setting up a RAID:

  1. Speed:  If speed is the primary reason you’re setting up a disk array, you won’t want to use RAID0 (striping) at all.  You’ll want an SSD (solid state drive) instead of RAID.  SSDs are pretty affordable and far faster than RAID, plus it’s easy to put your system on an SSDeven if you’re running Windows.  However if you want crazy insane speeds, you can go for a RAID0 set up using two or more SSDs!  It’s important to note, however, that if you’re a gamer you won’t see much benefit from RAID as the main bottlenecks usually revolve around RAM and graphics cards capabilities.
  2. Reliability:  Software RAID is almost always a better choice these days than hardware RAID.  Hardware RAID controllers suffer from three major problems that software controllers don’t:
    1. They are almost always expensive, usually adding at least a couple hundred dollars to the hardware cost.  Software RAID costs nothing.  (if you see a cheap RAID controller, say $20, it is almost always actually just a regular disk controller that implements software RAID in the BIOS.  As a result nearly always Windows only compatible)
    2. If your RAID card fails, your entire RAID is down – an ugly single point of failure.  With software RAID if your motherboard or drive control card fail, you can just plug the disks into another running system.
    3. If your RAID card fails, if you don’t have the same model card to replace it with, your data is permanently lost.  Again, with software RAID you can just move the disks to another machine and you’re back up and running.

    While hardware RAID is still faster than software RAID, the difference is pretty negligible and generally the small speed advantage will almost never be worth the potential for data loss.  There are lots of other advantages to software RAID too, such as the ability to increase a RAID’s volume sizes on filesystems like ZFS by simply adding more disks that are then ‘virtualized’ to appear as if they are extending existing disks or the fact that software RAID supports SSD caching.  Finally, software RAID on Linux systems using mdadm is very easy to set up – much more so than fiddling with settings in a RAID controller card’s utility.

  3. Speed:  On-disk data compression can dramatically reduce disk latency times by reducing the amount of data that actually needs to be written to disk.  The bottleneck on any write operation is always the drive access latency, so the less data you have to write the faster the overall operation will be.  While this does incur a cost in CPU cycles, it’s both minimal and trivial for modern processors.  Again, the ZFS filesystem supports compressed volumes, plus you get data encryption for free.
  4. Reliability:  If reliability and data security are your focus, consider RAID1 (mirroring).  While it offers no advantages for write speed, it will actually increase your speed for reads as the data chunks can be read simultaneously from two or more disks.
  5. Speed & Reliability:  You can get both speed and data security using RAID10; the downside is that this is also the most expensive option both in terms of the number of hard drives required (minimum of four).