RAID - Redundant Array of Inexpensive Disks

What's RAID?

RAID - Redundant Array of Inexpensive (or sometimes "Independent") Disks - is a method of combining several hard drives into one logical unit. It can offer fault tolerance and higher throughput levels than a single hard drive or group of independent hard drives.

RAID is a mature technology that speeds up data access while at the same time protecting your data from hard disk failure. RAID is quickly becoming a necessary component in every network since data loss and downtime can prove both fatal and financially destructive. Most networks are designed to provide instant access to massive amounts of data. More and more employees have to access customer and other databases. Intranets and corporate Web sites provide access to huge databases online.

Benefits of RAID

RAID provides increased storage capacities, and protects your important data from hard drive failure. 
 

There are multiple benefits of using RAID:

  • Reliability
  • Scalability
  • Real-time data recovery with uninterrupted access when a hard drive fails
  • System uptime and network availability
  • Protection against data loss
  • Multiple drives working in parallel increase system performance

A disk system with RAID capability can protect its data and provide on-line, immediate access to its data, despite a single disk failure (some RAID storage systems can withstand two concurrent disk failures). RAID capability also provides for the on-line reconstruction of the contents of a failed disk to a replacement disk.

RAID offers faster hard drive performance and nearly complete data safety. Storage requirements are expanding as file sizes get bigger and rendering needs get more complex. If you handle very large images or work on audio and video files, faster data throughput means enhanced productivity. RAID can be backed up to tape while the system is in use.

RAID Levels

The most common RAID levels, listed below, each exhibit their own unique benefits and drawbacks. This overview will attempt to highlight each or help you find the right RAID level for your particular application. Please note that the numbers assigned to each level of RAID are not indicative of superiority, they are merely for differentiation.

 
RAID 0 (STRIPING)
RAID 0 refers to striping data across multiple disks without any redundant information. Data being written to the array is broken down into blocks(stripes) and distributed sequentially across the member disks of the array. This level is also referred to as pure striping. This type of array provides hign I/O performance at low inherent cost but provides no redundancy of Fault Tolerance. Because the data is not stored contiguously on a single drive, it can be accessed in parallel - that is to say the pieces of data are read back from multiple sources near simultaneously. Unfortunately, striping reduces the level of data availability since a disk failure will cause the entire array to be inaccessible. RAID 0 was not defined originally but has become a commonly used term.
  • Minimum number of drives required: 2
Recommended Applications
  • Video Production and Editing
  • Image Editing
  • Pre-Press Applications
  • Any application requiring high bandwidth
Advantages









 
  • High performance
  • Very simple design. Easy to implement
  • No parity overhead
  • No capacity loss - all storage is usable
Disadvantages
  • Not a "true" RAID due to the lack of fault-tolerance
  • Failure of a single drive will result in loss of all data on the array
  • Should never be used in mission critical environments
RAID 1 (MIRRORING / DUPLEXING)
RAID 1 is the first defined level that allows a measure of data redundancy. Data written to one disk drive is simultaneously written to another disk drive. If one disk fails, the other disk can be used to run the system and reconstruct the failed disk. Since the disk is mirrored, it does not matter if one of them fails because both disks contain the same data at all times. RAID level 1 provides high data availability since two complete copies of all information are maintained. In addition, read performance may be enhanced if the array controller allows simultaneous reads from both members of a mirrored pair. Higher availability will be achieved if both disks in a mirror pair are on separate I/O busses, known as duplexing.
  • Minimum number of drives required: 2
Recommended Applications
  • Accounting
  • Payroll
  • Financial
  • Any application requiring very high availability
Advantages









 
  • One Write or two Reads possible per mirrored pair
  • Twice the Read transaction rate of single disks, same Write transaction rate as single disks
  • Fault tolerant 
  • Transfer rate per block is equal to that of a single disk
  • Easy to recover data in case of drive failure  100% redundancy of data means no rebuild is necessary in case of a disk failure, just a copy to the replacement disk. Under certain circumstances, RAID 1 can sustain multiple simultaneous drive failures
  • Easy to implement
  • Higher read performance than a single disk
  • Simplest RAID storage subsystem design
Disadvantages
  • Inefficient - 100% parity overhead is the highest of all RAID types.
  • Becomes very costly as number of disks increase, it requires twice the desired disk space
  • Typically the RAID function is done by system software, loading the CPU/Server and possibly degrading throughput at high activity levels. Hardware implementation is strongly recommended
  • May not support hot swap of failed disk when implemented in "software"
RAID 5 (STRIPING AND PARITY)
RAID 5, similar to level 3, stripes data and parity to generate redundancy. However, instead of requiring entirely new disk for parity storage, the parity is distributed through the stripe of the disk array. In RAID 5 both parity and data are striped across a set of separate disks. Next, the new parity is calculated. Finally, the new data and parity are written to separate disks. Data chunks are much larger than the average I/O size, but are still resizable. Disks are able to satisfy requests independently which provides high read performance in a request rate intensive environment. Since parity information is used, a RAID 5 stripe can withstand a single disk failure without losing data or access to data.
  • Minimum number of drives required: 3
Recommended Applications
  • File and Application servers
  • Database servers
  • WWW, E-mail, and News servers
  • Intranet servers
  • Most versatile RAID level
Advantages









 
  • High efficiency - highest read data transaction rates, Medium Write data transaction rates
  • Good aggregate transfer rate
  • Cost effective - only 1 extra disk is required
  • Fault tolerant
  • Low ratio of ECC (Parity) disks to data disks means high efficiency
  • The best choice in multi-user environments which are not write performance sensitive.
Disadvantages
  • Disk failure has a medium impact on throughput
  • Most complex controller design
  • Difficult to rebuild in the event of a disk failure (as compared to RAID level 1)
  • Individual block data transfer rate same as single disk
RAID 0+1
RAID 10 is technically (RAID 1 + RAID 0), a combination of RAID 1 and 0 - mirroring and striping, but without parity. RAID 10 is a stripe across a number of mirrored drives. It is implemented as a striped array whose segments are RAID 1 arrays. RAID 10 has the same fault tolerance as RAID level 1, as well as the same overhead for fault-tolerance as mirroring alone. Advantages: Very high I/O rates are achieved by striping RAID 1 segments Excellent solution for sites that would normally use RAID 1 Great for Oracle and other databases which need high performance and fault tolerance.
  • Minimum number of drives required: 4
Advantages









 
  • Fault tolerant
  • Very High I/O rates
Disadvantages
  • Very expensive - Expensive to maintain As with Raid 1 total capacity is equal to half of the total capacity of all disk in the array
  • High overhead
  • Very limited scalability
RAID 10
NOT to be confused with RAID 0+1, RAID Level 10 is a striped (RAID 0) array whose segments are mirrored (RAID 1). It is similar in performance to RAID 0+1, but with better fault tolerance and rebuild performance. It has the same fault tolerance as RAID level 1 with the same overhead for fault tolerance as mirroring alone. This RAID level is a combination of RAID 1 (mirroring) and RAID 0 (striping), having both features of these arrays - security and sequential performance. Typically four plus hard drives are used, because RAID 10 creates two pairs of mirrored arrays and combines these arrays to form one RAID 0 array. RAID 10 is especially appropriate for redundant storage of large files, and because parity is not calculated, write operations are very fast.
  • Minimum number of drives required: 4
Recommended Applications
  • Database server requiring high performance and fault tolerance
Advantages









 
  • High fault tolerance
  • High I/O rates achieved by striping RAID 1 segments
  • Faster rebuild performance than RAID 0+1
  • Under certain circumstances, RAID 10 array can sustain multiple simultaneous drive failures
  • Excellent solution for sites that would have otherwise gone with RAID 1 but need some additional performance boost
Disadvantages
  • Very expensive
  • High overhead
  • All drives must move in parallel to proper track lowering sustained performance
  • Very limited scalability at a very high inherent cost
RAID 50
RAID Level 50 is a striped (RAID 0) array which is striped across a RAID 5 array. Performance is improved compared to RAID 5 because of the addition of the striped array. Fault tolerance is also improved.
  • Minimum number of drives required: 6
Advantages









 
  • Higher fault tolerance than RAID 5
  • Higher efficiency than RAID 10
  • Higher I/O rates
Disadvantages
  • Very complex and expensive to implement