What is RAID?
Why to use RAID?
Levels
Now here I will be giving you brief introduction about some of the main RAID levels which are used in various organizations.
RAID 0
Step-by-Step Tutorial: Configure Software RAID 0 in Linux
Step-by-Step Tutorial: Configure software Linear RAID 0 in Linux
This level strips the data into multiple available drives equally giving a very high read and write performance but offering no fault tolerance or redundancy. This level does not provides any of the RAID factor and cannot be considered in an organization looking for redundancy instead it is preferred where high performance is required.
Calculation:
No. of Disk: 5
Size of each disk: 100GB
Usable Disk size: 500GB
Pros
|
Cons
|
Data is stripped into multiple drives
|
No support for Data Redundancy
|
Disk space is fully utilized
|
No support for Fault Tolerance
|
Minimum 2 drives required
|
No error detection mechanism
|
High performance
|
Failure of either disk results in complete data loss in respective array
|
RAID 1
This level performs mirroring of data in drive 1 to drive 2. It offers 100% redundancy as array will continue to work even if either disk fails. So organization looking for better redundancy can opt for this solution but again cost can become a factor.
Calculation:
No. of Disk: 2
Size of each disk: 100GB
Usable Disk size: 100GB
Pros
|
Cons
|
Performs mirroring of data i.e identical data from one drive is written to another drive for redundancy.
|
Expense is higher (1 extra drive required per drive for mirroring)
|
High read speed as either disk can be used if one disk is busy
|
Slow write performance as all drives has to be updated
|
Array will function even if any one of the drive fails
|
|
Minimum 2 drives required
|
|
RAID 2
This level uses bit-level data stripping rather than block level. To be able to use RAID 2 make sure the disk selected has no self disk error checking mechanism as this level uses external Hamming code for error detection. This is one of the reason RAID is not in the existence in real IT world as most of the disks used these days come with self error detection. It uses an extra disk for storing all the parity information
Calculation:
Formula: n-1 where n is the no. of disk
No. of Disk: 3
Size of each disk: 100GB
Usable Disk size: 200GB
Pros
|
Cons
|
BIT level stripping with parity
|
It is used with drives with no built in error detection mechanism
|
One designated drive is used to store parity
|
These days all SCSI drives have error detection
|
Uses Hamming code for error detection
|
Additional drives required for error detection
|
RAID 3
Calculation:
Formula: n-1 where n is the no. of disk
No. of Disk: 3
Size of each disk: 100GB
Usable Disk size: 200GB
Pros
|
Cons
|
BYTE level stripping with parity
|
Additional drives required for parity
|
One designated drive is used to store parity
|
No redundancy in case parity drive crashes
|
Data is regenerated using parity drive
|
Slow performance for operating on small sized files
|
Data is accessed parallel
|
|
High data transfer rates (for large sized files)
|
|
Minimum 3 drives required
|
|
RAID 4
This level is very much similar to RAID 3 apart from the feature where RAID 4 uses block level stripping rather than byte level.
Calculation:
Formula: n-1 where n is the no. of disk
No. of Disk: 3
Size of each disk: 100GB
Usable Disk size: 200GB
Pros
|
Cons
|
BLOCK level stripping along with dedicated parity
|
Since only 1 block is accessed at a time so performance degrades
|
One designated drive is used to store parity
|
Additional drives required for parity
|
Data is accessed independently
|
Write operation becomes slow as every time a parity has to be entered
|
Minimum 3 drives required
|
|
High read performance since data is accessed independently.
|
|
RAID 5
It uses block level stripping and with this level distributed parity concept came into the picture leaving behind the traditional dedicated parity as used in RAID 3 and RAID 5. Parity information is written to a different disk in the array for each stripe. In case of single disk failure data can be recovered with the help of distributed parity without affecting the operation and other read write operations.
Calculation:
Formula: n-1 where n is the no. of disk
No. of Disk: 4
Size of each disk: 100GB
Usable Disk size: 300GB
Pros
|
Cons
|
Block level stripping with DISTRIBUTED parity
|
In case of disk failure recovery may take longer time as parity has to be calculated from all available drives
|
Parity is distributed across the disks in an array
|
Cannot survive concurrent drive failures
|
High Performance
|
|
Cost effective
|
|
Minimum 3 drives required
|
|
RAID 6
Calculation:
Formula: n-2 where n is the no. of disk
No. of Disk: 4
Size of each disk: 100GB
Usable Disk size: 200GB
Pros
|
Cons
|
Block level stripping with DUAL distributed parity
|
Cost Expense can become a factor
|
2 parity blocks are created
|
Writing data takes longer time due to dual parity
|
Can survive concurrent 2 drive failures in an array
|
|
Extra Fault Tolerance and Redundancy
|
|
Minimum 4 drives required
|
|
RAID 0+1
This level uses RAID 0 and RAID 1 for providing redundancy. Stripping of data is performed before Mirroring. In this level the overall capacity of usable drives is reduced as compared to other RAID levels. You can sustain more than one drive failure as long as they are not in the same mirrored set.
NOTE: The no. of drives to be created should always be in the multiple of 2
Calculation:
Formula: n/2 * size of disk (where n is the no. of disk)
No. of Disk: 8
Size of each disk: 100GB
Usable Disk size: 400GB
Pros
|
Cons
|
No parity generation
|
Costly as extra drive is required for each drive
|
Performs RAID 0 to strip data and RAID 1 to mirror
|
100% disk capacity is not utilized as half is used for mirroring
|
Stripping is performed before Mirroring
|
Very limited scalability
|
Usable capacity is n/2 * size of disk (n = no. of disks)
|
|
Drives required should be multiple of 2
|
|
High Performance as data is stripped
|
|
RAID 1+0 (RAID 10)
NOTE: The no. of drives to be created should always be in the multiple of 2
Calculation:
Formula: n/2 * size of disk (where n is the no. of disk)
No. of Disk: 8
Size of each disk: 100GB
Usable Disk size: 400GB
Pros
|
Cons
|
No Parity generation
|
Very Expensive
|
Performs RAID 1 to mirror and RAID 0 to strip data
|
Limited scalability
|
Mirroring is performed before stripping
|
|
Drives required should be multiple of 2
|
|
Usable capacity is n/2 * size of disk (n = no. of disks)
|
|
Better Fault Tolerance than RAID 0+1
|
|
Better Redundancy and faster rebuild than 0+1
|
|
Can sustain multiple drive failures
|
|