Originally the term RAID defined as “Redundant Array of Inexpensive Disks” but now it is referred to as “Redundant Array of Independent Disk”. It is a data storage virtualization technology. The idea behind this is to combine multiple physical disk drives components into a single logical storage unit or drive for data redundancy, performance improvement, or both. It was invented by David Patterson, Garth A. Gibson, and Randy Katz at the University of California, Berkeley in 1987.
Benefits Of Using RAID
- RAID technology prevents data loss due to disk failure.
- This technology can be implemented with hardware or software.
- The server uses RAID technology to prevent the data
How Does It Work?
With the RAID, data of a drive can be mirrored on multiple disks in the same array So that if one disk fails the data can be recovered from other disks. Data striping is another technique that helps in preserving data. RAID also offers reading and writing data from multiple disks which results in performance enhancement.
Standard Levels Of RAID Technology
There are seven levels of RAID schemes these are also known as the standard level of RAID-
1. RAID 0
2. RAID 1
3. RAID 2
4. RAID 3
5. RAID 4
6. RAID 5
7. RAID 6
Generally, RAID levels 0,1,5 and 6 are used nowadays at various places like servers, data centers, etc.
Common Characteristics In All The RAID Levels –
- Each level consist of a set of physical disk drives
- The operating system considers these separate disks as a single logical storage disk
- Data is distributed across the physical drives of the array
- Redundant disk capacity is used to store parity information
- Parity information can help in recovering data in case of disk failure
What is the Parity check?
A parity check is a process in which accurate data transmission between nodes during the communication is ensured. The parity bits are appended with the original data bits and then it is transmitted over the network to the destination. These transferred bits are checked and verified at the destination. If numbers of bits at destination are the same as the number of bits at source then data is considered accurate.
RAID Level 0(Striping)-
- It requires a minimum of 2 disks
- There is no redundancy in RAID level 0
- In this level, data is divided into multiple blocks and then these blocks are written across the disks in the array
- Placing this data across multiple disks is also called “data striping”.
- There is no parity check on this level.
- In this level, if data once gets corrupted, it can’t be recovered.
Advantages Of RAID Level 0 –
- Data processing is very fast
- Overall performance increased because multiple data requests probably are not on the same disk.
- Implementation of this level is easy
- No overhead of parity calculation
Disadvantage Of RAID Level 0 –
- The reliability of this level is zero.
- This level is not fault-tolerant
- Should not be used in the critical environments where data is important
- There is no backup facility in this level
RAID Level 1(Mirroring)
- Minimum two disks are required
- Same data is copied to multiple disks which is known as “data mirroring”
- Data striping is not used in this RAID level
- The data stored on one drive is automatically duplicated which may create a little chance of data loss and system downtime
- Data can be read from any disk but is written on all disks in the array
- A read request can be executed by any disk as these contains same data
- If data is updated in a disk it will be simultaneously get updated in all the disks
- There is no overhead of storing parity information
- Recovery from failure is simple. If one disk fails we just have to access the data from any other disk in the array
Advantages Of RAID Level 1 –
- It provides fault tolerance
- This level provides data redundancy
- If one disk fails the other automatically takes over so continuous operation is maintained
- RAID level 1 is used to store systems software that is necessary to run a system like operating systems, compilers, drivers, etc, and other critical files.
Disadvantages Of RAID Level 1 –
Since data is duplicated means more space is required to store the data so using this level increases costs.
RAID Level 2
- All disk participate in the execution of every I/O request.
- The spindles of each disk drive are synchronized so that each disk head is in the same position on each disk at any given time.
- Data striping is used
- Error-correcting code is also calculated and stored with data
- No implementation in practice due to high costs and overheads
RAID Level 3
- It requires a minimum of 3 disks
- It performs byte-level striping and dedicated parity
- Data is divided into byte units and written across multiple disk drives.
- All disk can be accessed in parallel data can be transferred in bulk. Thus high-speed data transmission is possible.
- In case of drive failure parity drive is accessed and data is reconstructed.
- Once the failed disk is replaced the missing data can be restored on the new drive
RAID Level 4
- It required a minimum of 3 disks
- It is similar to RAID level 3
- The main difference between RAID level 3 and 4 is that RAID level 4 performs block-level striping with dedicated parity unlike RAID level 3 which performs byte-level striping
RAID Level 5(Distributed Parity)
- It required a minimum of 3 disk drives
- RAID level 5 also performs byte-level striping with distributed parity
- It includes both striping and mirroring
- RAID level 5 also performs error checking by using parity bits
- This level is very important and it is widely used in data centers, servers or in large computing centers
RAID Level 6 (Two Parity Distributed Disk)
- It required a minimum of 4 disks
- RAID level 6 is similar to RAID level 5 but it has an extra parity bit storage than RAID level 5
- It also performs byte-level striping with double distributed parity
Also known as hybrid RAID many storage controllers allows RAID levels to be nested these are the combination of two standard levels of RAID
RAID 0+1 (Mirror Of Stripes) –
It creates two stripes and then mirrors them, which means both RAID 0 and RAID 1 are used. RAID 0+1 is used for both data replicating and sharing. The vendor often avoids using a + sign so RAID 0+1 can be also written as RAID 01 or RAID 1+0 can be written as RAID 10.
RAID 1+0 –
It creates a striped set from a set of mirrored drives. The array can sustain multiple drive losses.
JBOD RAID N+N –
JBOD which is abbreviated as “Just a bunch of disks” is an architecture using multiple disks which exposed as a single storage disk. The drives can be treated independently or can be combined into one logical volume using a volume manager like LVM. To know more about nested RAID you can check Nested RAID in Wikipedia.
Non-Standard RAID Levels
There are many RAID configurations are possible many companies and organization use their own configuration to meet a specialized need these configurations are known as the non-standard level of RAID. For example- Hadoop, RAID S, RAID 1E, Linux MD RAID 10, etc.
Implementation of RAID
RAID can be implemented as both that is as a software along with an operating system and as hardware by using a RAID controller. There are some variations in the performance of both.
Software RAID is implemented in the operating system in which the raid disk is installed. It uses the processing power of a system which can slow down the overall performance of the system. The cost is lower because no additional hardware is required.
Replacing a failed disk is comparatively more complex in software raid. It permits users to reconfigure array without being restricted by the hardware.
Hardware RAID is implemented using a RAID controller or RAID card which manage the raid configuration independently from the operating system. The RAID controller does not take power away from the disks it manages. It can work with any operating system. Replacing a failed hard disk is simple; you just have to remove the failed one and plug the new one. The one disadvantage it has is it takes separate hardware which increases cost.
We hope this article gives you a basic understanding of the RAID technology. Now if you have any queries regarding it you can write to us in the comments.