The RAID (Redundant Array of Independent Disks - Redundant array of independent disks) creates a single usable data disk, where multiple physical disks are combined in a chain (array) to achieve better speed and fault tolerance. The following are the three key concepts of RAID:
- Mirroring: copying data to more than one disk.
- Striping: dividing data across more than one disk.
- Error correction (fault tolerance): redundant data is stored to allow detection and, if possible, correction of problems.
Although there are many different levels of RAID, IBM chooses to support the most common RAID types: 0, 1, 5, 6, and 10. Different RAID levels use one or more of the following techniques, depending on system requirements. The primary purpose of using RAID is to improve reliability, using a RAID SATA 3Ware 9550SX controller or an Adaptec SA-SCSI RAID controller for all distributed RAID solutions.
Note: RAID is not a backup solution. Rather, RAID creates a single usable data disk, where multiple physical disks are combined in an array to improve speed and fault tolerance.
RAID Levels
RAID 0 (Non-redundant array or striped set without parity)
Implements data striping, where file blocks are written to multiple disks in fragments that require a minimum of two disks.
- Advantage: read/write speed increases significantly. The more disks in the array, the greater the bandwidth.
- Disadvantage: it has no fault tolerance. If a single disk fails, the array breaks. Additionally, RAID 0 does not implement error checking, so any error is unrecoverable. A common solution for fault tolerance is to have an external disk outside the array to use as backup memory in case of hardware failure.
RAID 1 (Mirrored set without parity)
Implements data mirroring. Data is duplicated on 2 or 4 disks through a hardware RAID controller and provides some fault tolerance. The array is recoverable if at least one disk does not fail. It provides faster read performance than a single disk and guarantees redundancy in case of a unit failure. Write speed is slightly reduced.
RAID 5 (Striped set with distributed double parity)
Implements block-level data striping and distributes parity across disks. Parity information allows recovery in case of a single disk failure, as subsequent reads can be calculated from distributed parity. RAID 5 also allows for increased read/write speeds and more efficient use of disk space. RAID 5 requires a minimum of three disks.
RAID 6 (Double parity)
Implements double parity stripes on each disk and allows for the failure of two disks before data is lost. Since RAID 6 has the equivalent capacity of two dedicated disk units for storing parity data in a parity set, with RAID 6, more I/O operations occur than with RAID 5. These additional I/O operations can reduce performance. RAID 6 requires a minimum of 4 disks and a maximum of 18 disks.
RAID 10 (RAID 1 + 0)
Creates multiple mirrors, where data is organized as stripes across multiple disks and subsequently the striped disk sets are mirrored. RAID 10 offers the same fault tolerance as RAID 1, with read/write speeds superior to a single RAID 1 volume or a single disk. RAID 10 level requires four disks to be implemented.
Important: Do not use RAID controllers to store passwords for secure encryption devices (SED - Secure Encryption Device). RAID is not a key management system. If power is interrupted to the RAID controller, all data stored on the controllers will be lost.