RAID Levels
RAID level numbers and the definitions.
August 1, 1997
RAID Levels
RAID levels 0, 1, and 5 are the most commonlyavailable hardware RAID solutions for Windows NT systems, and NT includesthem. Asterisks denote RAID levels available for NT only through hardwarecontrollers or combinations of hardware and software.
RAID 0 is ideal for environments in whichperformance (read and write) is more important than fault tolerance or you needthe maximum amount of available drive capacity in one volume. Drive parallelismincreases throughput because all disks in the stripe set work together on everyI/O operation. For greatest efficiency, all drives in the stripe set must be thesame capacity. Because all drives are used in every operation, RAID 0 allows forsingle-threaded I/O only (i.e., one I/O operation at a time). Environments withmany small simultaneous transactions (e.g., order entry systems) will not getthe best possible throughput.
RAID 1 is useful for building a fault-tolerantsystem or data volume, providing excellent availability without sacrificingperformance. (NT does not support a RAID set as the boot volume--this capabilityrequires a hardware controller). However, you lose 50 percent of assigned diskcapacity. Read performance is somewhat higher than write performance because NTreads data off the drive whose head is closest to the desired sector (calledlocality of reference); all write operations are made to both diskssimultaneously.
RAID 3 offers the performance of RAID 0 withthe fault tolerance of RAID 5, but with cautions. As with RAID 0, RAID 3 usessingle-threaded I/O but with a standard 256KB data transfer block. Streamingdata applications such as video-editing systems benefit simultaneously from diskparallelism, fault tolerance, and the large-block transfers. But databaseapplications or others with many small transactions issued simultaneously mighthave problems.
RAID 2 is similar in concept to RAID 3 but writes in single bits to thedrives in the stripe set rather than in blocks, thus requiring many drives for avolume (however, few--if any--implementations are available for NT).
RAID 4 is similar to RAID 3 but uses around-robin algorithm for writing data to the stripe set. Because RAID 4 has togenerate parity data on one drive, write operations are single-threaded, butreads are multithreaded (i.e., are performed via multiple simultaneous I/Orequests) because not all drives are involved in every transaction. RAID 4 isbetter for an environment requiring more discrete transactions per second. BothRAID 3 and 4 use the minimum number of drives to achieve fault tolerance.
RAID 5 is multithreaded for both reads andwrites because both normal data and parity data are distributed round-robin.This is one reason why RAID 5 offers better overall performance in serverapplications than either RAID 3 or 4. Random I/O benefits more from RAID 5 thandoes sequential I/O, and writes take a performance hit because of the paritycalculations. RAID 5 is ideal for database applications.
RAID 6 is essentially RAID 5 enhanced, suchthat two drives in the stripe set can fail because the distributed parityinformation has its own parity and is thus redundant.
You can build RAID 10 either directly throughthe RAID controller (depending on the controller) or by combining softwaremirroring and controller striping, or vice versa (called RAID 01).
About the Author
You May Also Like