RAID levels 0, 1, 2, 3, 4, 5, 6, 0+1, 1+0 features explained in detail

What is RAID?

RAID stands for Redundant Array of Inexpensive Disks which was later interpreted to Redundant Array of Independent Disks. This technology is now used in almost all the IT organizations looking for data redundancy and better performance. It combines multiple available disks into 1 or more logical drive and gives you the ability to survive one or more drive failures depending upon the RAID level used.

Why to use RAID?

With the increasing demand in the storage and data world wide the prime concern for the organization is moving towards the security of their data. Now when I use the term security, here it does not means security from vulnerable attacks rather than from hard disk failures and any such relevant accidents which can lead to destruction of data. Now at those scenarios RAID plays it magic by giving you redundancy and an opportunity to get back all your data within a glimpse of time.

Levels

Now with the moving generation and introduction of new technologies new RAID levels started coming into the picture with various improvisation giving an opportunity to organizations to select the required model of RAID as per their work requirement.

Now here I will be giving you brief introduction about some of the main RAID levels which are used in various organizations.

RAID 0

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

This level uses byte level stripping along with parity. One dedicated drive is used to store the parity information and in case of any drive failure the parity is restored using this extra drive. But in case the parity drive crashes then the redundancy gets affected again so not much considered in organizations.


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

This level is an enhanced version of RAID 5 adding extra benefit of dual parity. This level uses block level stripping with DUAL distributed parity. So now you can get extra redundancy. Imagine you are using RAID 5 and 1 of your disk fails so you need to hurry to replace the failed disk because if simultaneously another disk fails then you won't be able to recover any of the data so for those situations RAID 6 plays its part where you can survive 2 concurrent disk failures before you run out of options.

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)

This level performs Mirroring of data prior stripping which makes it much more efficient and redundant as compared to RAID 0+1. This level can survive multiple simultaneous drive failures. This can be used in organizations where high performance and security are required. In terms of fault Tolerance and rebuild performance it is better than RAID 0+1.

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