Definition of RAID

RAID is an acronym that stands for (variously):

  • Redundant Array of Independent Drives
  • Redundant Array of Inexpensive Disk

History of RAID

Disk drives were once much slower and exceedingly expensive. The cost for a drive rose almost exponentially with an increase in the drive's storage capacity. Processing power was increasing faster than disk storage capacity or speed. To improve system processing performance, a project sponsored by IBM was undertaken by three researchers at the University of California, Berkeley to develop a way to use multiple disks to increase data rates and storage capacity. The result was a paper originally titled "A Case for Redundant Arrays of Inexpensive Disks (RAID)" authored by David A. Patterson, Garth Gibson and Randy H. Katz (original paper here: UCB or CMU).

The premise was to use an array of low-capacity inexpensive disks instead of a single large capacity drive to overcome the performance bottleneck caused by processes competing to access the disk drive by using disks designed for desktop computers instead of disks designed for mainframes. Because there are multiple disks in the array and several disks could service any read or write request, both availability and data throughput could be improved over the single large disk. Using smaller, less expensive drives would also lower the cost of the computing system. If additional redundancy and reliability logic were added to the array, the reliability of the array could rival or exceed the reliability of a single expensive mainframe drive.

Now that mainframes have largely passed out of use, the RAID concept still remains because of the performance gains and cost-to-benefit ratios created by tying multiple disks together into large arrays providing a seemingly endless storage system.

RAID System Implementations

Modern systems implement RAID in one of three ways:

  • Software Based RAID
    • Windows Logical Disk Manager
    • Linux Kernel support (via multiple devices [md] driver)
  • Host Bus Adapters
    • Chips in the system mainboard
    • Dedicated adapter board / daughter cards
  • Dedicated Storage devices (SAN/NAS)

RAID Levels

0 Striping
  • No Redundancy (so it is really RAID?)
  • Lose a drive, lose the data on that drive.
  • Higher write data rate due to parallel access.
1 Mirroring
  • Redundancy: Data is mirrored across sets of disks
  • Data is mirrored synchronously or asynchronously
  • Higher read speeds than a single disk
  • Lose a drive, data is still there on another drive
  • Doubles storage costs
2 Hamming Code Parity
  • Used to detect disk failures
  • No longer in use as drive controller hardware now performs the disk failure detection function.
  • Data is stored interleaved by bit or block.
  • One or more extra drives are used to detect 2-bit errors and correct single bit errors automatically.
3 Byte Level Parity
  • Virtual disk blocks are written across all data drives
  • Disk heads move in unison
  • Data is written across all drives simultaneously
  • Parity information is stored on one drive
  • Requires fewer drives than RAID-1
  • Good choice for storing large files
  • Poor choice for databases
4 Block Level Parity
  • Data blocks are written across all data drives
  • Parity information is stored on one drive
  • Parity is calculated on an interleave or stripe unit
  • Access to the parity disk is the performance bottleneck
  • Disks can be added without recalculating parity
5 Interleave Parity
  • Data is striped across all data drives
  • Parity is is written in rotated fashion across all disks
  • Balances redundancy and performance
  • Adding new disks requires recalculating parity
6 Check Data  

10
1+0

Mirroring & Striping
  • Stripes written across mirrored pairs of disk
  • During recovery, only failed drive and it's mirror are involved and performance of the array is otherwise unaffected.
0+1    

 

The "Best" RAID Level

There are advantages and disadvantages to every RAID level. The RAID level you choose should be based on what applications will be accessing the drives. Thus, there is no single best answer to this question.


Bookmark this page and SHARE:  

Search

Support InetDaemon.Com

Get Tutorials in your INBOX!

Free Training

Free Training