RAID comes in several flavors, levels zero through five. Each level is optimized for various capabilities, including improved performance of read or write operations, and improved data availability through redundant copies or parity checking. While RAID-2 and RAID-4 are seldom used, all other RAID levels are supported by many different vendors.
RAID-0 is a high-performance/low-availability level. It provides basic disk striping without parity protection to catch errors, so while throughput is high, no redundancy is provided. Therefore, RAID-0 is considered a pseudo-RAID. Implementations should be relatively inexpensive because no extra storage is provided for parity information and because the software and firmware is not as complex as other RAID levels. If one disk in the array happens to fail, however, all data in the array is unavailable.
RAID-1 is a disk-mirroring strategy for high availability. All data is written twice to separate drives. The cost per megabyte of storage is higher, of course, but if one drive fails, normal operations can continue with the duplicate data. And if the RAID device permits hot-swapping of drives, the bad drive can be replaced without interrupting operations. Performance with RAID-1 is moderate, performing faster on reads than on writes.
Combining RAID-0 and -1 provides two sets of striped disks, and is not uncommon. Striping increases throughput, and simultaneous reads from the two sets will mitigate the performance drag caused by writing everything two times.
RAID-2 performs disk striping at the bit level and uses one or more disks to store parity information. RAID-2 is not used very often because it is considered to be slow and expensive.
RAID-3 uses data striping, generally at the byte level and uses one disk to store parity information. Striping improves the throughput of the system, and using only one disk per set for parity information reduces the cost per megabyte of storage. Striping data in small chunks provides excellent performance when transferring large amounts of data, because all disks operate in parallel. Two disks must fail within a set before data would become unavailable.
RAID-4 stripes data in larger chunks, which provides better performance than RAID-3 when transferring small amounts of data.
RAID-5 stripes data in blocks sequentially across all disks in an array and writes parity data on all disks as well. By distributing parity information across all disks, RAID-5 eliminates the bottleneck sometimes created by a single parity disk. RAID-5 is increasingly popular and is well suited to transaction environments.
-- Barry D. Bowen ([email protected]) is an industry analyst and writer with the Bowen Group Inc., based in Bellingham, WA.