Different types of RAID in OS
Redundant Array of Independent Disks (RAID) was first introduced by David A. Petterson and Garth Gibson at the University California at Berkely in 1998. The basic idea behind RAID is to combine multiple small, inexpensive disk drives into an array to accomplish performance or redundancy goals not attainable with one large and expensive drive. This array of drives will appear to the computer as a single logical storage unit or drive.
Functions of RAID:
1. Storing the same data in different places on multiple hard disks and improves storage performance.
2. It provides better throughput
3. Data fault tolerance
RAID supports 7 levels and these are:
RAID level 0, often called “stripping“. The idea behind this level is data to be stored is divided into some parts called strips and loaded these strips across the member of the disk of the array.
Advantages of RAID 0:
1. It is a very fast method.
2. Performance-oriented disk mapping method.
3. Performance is better than a single drive since the workload is balanced by the array members.
4. This method is very useful for high-performance systems.
Disadvantages of RAID 0:
1. No redundancy of data.
2. It offers no fault tolerance.
3. When any disk member fails, it affects the entire array.
RAID level 1 uses at least two duplicate hard drives and store the same blocks of information between them. So, it is often called “Mirroring”. If one of the mirrored drives failure due to a mechanical problem or does not respond then the remaining drive will continue to serve and provide correct data.
Advantages of RAID 1:
1. It provides high reliability.
2. Fault tolerance, recovery from failure is simple.
3. Good performance
Disadvantages of RAID 1:
1. Very costly to implement because of mirroring data.
2. Minimum 2 drives need to implement RAID 1
RAID level is called “Hamming code“. The strips are very small at this level, often as small as a single byte or word. The hamming code is calculated across corresponding bit positions on each data disk and the bits of the code are stored in the corresponding bit positions on multiple disks.
Disadvantages of RAID 2:
1. RAID level 2 is rarely implemented.
RAID level 3 requires only a single redundant disk. RAID 3 employs parallel access with data distributed in small strips. Instead of an error corresponding code, a single parity bit is computed for the set of individual bits in the same position on all of the data disks. In the event of a drive failure, the parity drive is accessed and data is reconstructed from the remaining devices.
Advantages of RAID 3:
1. RAID 3 can achieve very high data transfer rates.
2. Any I/O request will involve the parallel transfer of data from all of the data disks.
Disadvantages of RAID 3:
1. RAID level 3 is also rarely implemented.
2. Only processes one I/O at a time.
This level uses dedicated parity drive to protect data disks are stripped, as in RAID level 0. Parity information for the stripe is calculated and stored on a parity disk. If one of the data disks failed is the information re-built on a separate disk using the parity information? If the parity disk fails, the parity information is recalculated on a spare disk. It is better suited to the transaction I/O rather than large file transfers.
It is the most common type of RAID level 5. It distributes the parity strips across all disks. RAID 5 eliminates the write bottlenecks. The only it has is the parity calculations process. But with modern CPUs and software of RAID that is not even a very big bottleneck.
Advantages of RAID 5:
1. Highest (read) data transmission rate.
2. Low ratio of ECC (Parity) disks to data disks, means high efficiency.
Disadvantages of RAID 5:
1. Most complex controller design
2. Difficult to rebuild in the event of disk failure.
3. The high overhead for small writes. To change 1 byte in a file, the entire strip must be read, the byte changed, the parity information recalculated and the entire stripe rewritten.
4. Disk failure has a medium impact on throughput.
In RAID 6 method, two different parity calculations are carried out and stored in separate blocks on different disks. So, this scheme needs N+2 disks (2 for parity).
Advantages of RAID 6:
1. It provides extremely high data availability.