Operating System

RAID: Its Uses and Benefits

RAID, an acronym for redundant array of inexpensive disks, essentially outlines a way to organize data such that it can be accessed efficiently and reliably. There are various ways in which the data can be organized and various numbers of disks needed depending on which option you choose. There are six basic types of RAID configurations, and a few variations on those. The most common of the following arrays are RAID 0, RAID 1 and RAID 5.

  • RAID 0 (2+ Drives needed): Data is striped across the drives. This type of configuration generally used to increase performance. Drives of different sizes can be used, however the larger drives will be limited to the size of the smallest drive. One downside to RAID 0 is that if one drive fails, then all the data on all the drives is lost. On the other hand this offers good read and write times and no storage is lost for parity data.
  • RAID 1 (2+ Drives needed): In RAID 1 the data is mirrored on the drives. This means that the number of copies of the data is equivalent to the number of drives in the array. The write time for the array is limited to the slowest drive, however read time may be increased. Since the data is duplicated if one of the drives fail the data is still preserved. Read and write times are similar to that of a single drive.
  • RAID 2 (3+ Drives needed): Raid 2 introduces error correction. At least two of the drives are used to store data (striped at the byte level) and the rest are used to store error correction code for each byte stripe. This type of array is rarely used.
  • RAID 3 (3+ Drives needed): In this configuration data is striped at the bit level, as in RAID 2, however the error correction used in RAID 3 is stored in something called a parity bit. The parity bit is added to the data stored and is checked when the data is accessed to make sure it is correct. As with RAID 2, RAID 3 is not commonly used.
  • RAID 4 (3+ Drives needed): RAID 4 is essentially the same as RAID 3 except that the data is striped in blocks, not bytes.
  • RAID 5 (3+ Drives needed): In this array every disk used to store both data (which is striped in blocks) and the parity blocks. The image below shows how the parity blocks are distributed across the four disks. If a single disk fails, the data can be rebuilt from the distributed parity information.Data can be read very quickly from this array, although write times can suffer because of the need to write the parity data.
  • RAID 6 (4+ Drives needed): RAID 6 is similar to RAID 5, except that each parity block is duplicated. Each disk therefore contains two parity blocks along with its data, as opposed to one.

When talking about data striping, there are two ways of segmenting it. With byte striping, the first byte is stored on one drive, the second on the next and so on, looping back to the first drive if needed. The same process occurs in block striping, except the size of each block is bigger (size determined when the array is setup).

Common variations of RAID setups include RAID 0+1, RAID 1+0 and RAID 5+0 which allow for the combination of advantages from different RAID setups.

  • RAID 0+1 takes the striped data and duplicates it on another set of disks. This requires at least four disks: two for the striped data and two for the mirror of that striped data. If drives in one mirrored set fail, that can be rebuilt from the other set, but if they fail in both, then array is lost.
  • RAID 1+0 creates a stripes set of mirrored disks. Again, this requires at least 4 disks: The first two disks are set up in RAID 1 (mirrored) and the second two disks are set up in RAID 1 (mirrored), however the two different sets of disks hold different stripes of data.
  • RAID 5+0 requires at least 6 drives. The RAID 0 level stripes data across different sets of disks (at least two sets) and each set of disks contains at least 3 disks set up in RAID 5 with the distributed parity blocks.

A common misconception is that RAID arrays can be thought of as a substitution for backups. While in some cases data can be rebuilt from a single failed drive, this is not always the case. RAID setups were designed for increased accessibility of data. If a power surge toasts the computer or the motherboard malfunctions all data can be lost. RAID setups also don’t protect against user data deletion (accidentally deleting a file). The primary advantage in choosing a RAID setup is getting better performance out of drives and improved protection against single drive failure.