RAID (Redundant Array of Independent Disks; originally Redundant Array of Inexpensive Disks) is a way of protecting data against drive failure, by storing the same data in different places on multiple hard disks. Basic techniques, used in RAID are as follows;
Striping
Mirroring
Parity
RAID has an infinite number of implementations and the basic, more common implementations are as follows;
RAID 0
This is based only on Striping. This system can be implemented using a minimum disk count of 2. This implementation does not provide any protection against disk failure.
RAID 1
RAID 1 is based only on mirroring. Because of that it can protect data against single disk failure. Minimum disks needed is 2.
RAID 3
This system uses two techniques; striping and parity. One disk is dedicated for the parity. This system can protect data against single disk failure. At least 3 disk drives are needed.
RAID 5
This is so similar to RAID 3. The only difference here is, it does not use a dedicated disk for the parity. The parity is distributed among all the disks.
RAID 6
Very similar to RAID 5. But this uses 2 parities distributed into 2 separate disks. Because of this, RAID 6 can guarantee the protection of data against 2 disk failures.
RAID 1+0 (10)
This is a combined RAID system. It is designed using the concepts of RAID 1 and RAID 0. This system can protect your data against 2 disk failures. But more importantly, it cannot guarantee.
For an example: if Disk 1 and Disk 2 failed, the lost could not be recover.
RAID 0+1 (01)
Very similar to RAID 1+0, but the pattern in which RAID 1 and RAID 0 has been used is changed. This also cannot guarantee the data protection against 2 disks failure. But in some scenarios it can.
The basic idea behind RAID is this. We can choose any of the above levels of RAID in implementations. I will do a software level RAID 3 Implementation on a RHEL platform in my next post.
Good Luck & Have Fun!