Udgivet d. 16 Nov. 2001 af:
Bo Krüger Hansen
What is RAID?
RAID is an acronym for Redundant Array of Inexpensive (or Independent) Disks. A RAID array is a collection of drives which collectively act as a single storage system, which can tolerate the failure of a drive without losing data, and which can operate independently of each other.
What are the different RAID levels?
A research group at UC-Berkeley coined the term "RAID", defining six RAID levels. Each level is a different way to spread data across multiple drives--a compromise between cost and speed. Understanding these levels is important, because each level is optimized for a different use.
RAID Level 0
RAID Level 0 is not redundant, hence does not truly fit the "RAID" acronym. In level 0, data is split across drives, resulting in higher data throughput. Since no redundant information is stored, performance is very good, but the failure of any disk in the array results in data loss. This level is commonly referred to as striping.
RAID Level 1
RAID Level 1 provides redundancy by duplicating all data from one drive on another drive. The performance of a level 1 array is only slightly better than a single drive, but if either drive fails, no data is lost. This is a good entry-level redundant system, since only two drives are required; however, since one drive is used to store a duplicate of the data, the cost per megabyte is high. This level is commonly referred to as mirroring.
RAID Level 2
RAID Level 2, which uses Hamming error correction codes, is intended for use with drives which do not have built-in error detection. All SCSI drives support built-in error detection, so this level is of little use when using SCSI drives.
RAID Level 3
RAID Level 3 stripes data at a byte level across several drives, with parity stored on one drive. It is otherwise similar to level 4. Byte-level striping requires hardware support for efficient use.
RAID Level 4
RAID Level 4 stripes data at a block level across several drives, with parity stored on one drive. The parity information allows recovery from the failure of any single drive. The performance of a level 4 array is very good for reads (the same as level0). Writes, however, require that parity data be updated each time. This slows small random writes, in particular, though large writes or sequential writes are fairly fast. Because only one drive in the array stores redundant data, the cost per megabyte of a level 4 array can be fairly low.
RAID Level 5
RAID Level 5 is similar to level 4, but distributes parity among the drives. This can speed small writes in multiprocessing systems, since the parity disk does not become a bottleneck. Because parity data must be skipped on each drive during reads, however, the performance for reads tends to be considerably lower than a level 4 array. The cost per megabyte is the same as for level 4.
Which RAID level should I use?
The right choice depends on the application. The following table summarizes the RAID levels with some of their possible uses.
Level 0 (striping)
Any application which requires very high speed storage, but does not need redundancy. Photoshop temporary files are a good example.
Level 1 (mirroring) Applications which require redundancy with fast random writes; entry-level systems where only two drives are available. Small file servers are an example.
Level 4 (parity)
Applications which require redundancy at low cost, or with high-speed reads. This is good for archival storage. Larger file servers are an example.
Level 5 (distributed parity)
Similar to level 4, but may provide higher performance if most I/O is random and in small chunks. Database servers are an example.
Often, it makes sense to use more than one level. For instance, in a two-drive system, one partition could use level 0 to offer the highest performance for temporary files; another partition could use level 1 to offer security for important data or applications. In a three-drive system, a partition for temporary files could use level 0, the boot disk could use level 1, and large data files could be stored on a level 4 partition.