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 |
|
1 | Mirroring |
|
2 | Hamming Code Parity |
|
3 | Byte Level Parity |
|
4 | Block Level Parity |
|
5 | Interleave Parity |
|
6 | Check Data | |
10 |
Mirroring & Striping |
|
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.