The performance and reliability of disk storages are paramount for any organization. Redundant Array of Independent Disks (RAID) is a feature that is useful to achieve high performance and better reliability in a computer system.
In this tutorial, we’ll discuss RAID as a technology and its various features.
2. What is RAID?
A RAID system consists of two or more disk drives working in parallel. These disk drives can be hard disks or solid-state drives (SSDs). RAID provides several levels where each level provides a certain degree of performance and reliability.
However, these RAID levels are not standardized. Organizations use the nature of data criticality to decide the RAID levels.
3. RAID Levels
RAID is classified into different levels based on the performance and reliability parameters. The following are the important RAID levels:
3.1. Level 0 – Stripping
In a RAID 0 system, data is split up into blocks. These blocks are written across all of the drives simultaneously. By using multiple disks (at least two) at the same time, this offers better I/O performance. Furthermore, it uses all the disks’ storage and is easy to implement due to its simplicity.
However, RAID 0 is not fault-tolerant. Since the data is split across multiple drives, when a single drive fails, all of the data across the system will be lost due its fragmented nature.
3.2. Level 1 – Mirroring
In a RAID level 1 system, data is duplicated into an additional disk drive. Thus, it’s also known as mirroring.
This system provides excellent read speed as the data is available in an additional disk drive. It also provides better fault tolerance and as there is a back up of the data. Therefore, if there is any failure in one disk drive, the mirror disk drive is used.
However, the biggest disadvantage of RAID 1 is that it requires twice as many resources. RAID 1 useful for mission-critical storage such as accounting systems where data security is of paramount importance.
3.3. Level 5 – Stripping with Parity
RAID 5 is the most commonly used and secure RAID level. It requires a minimum of three disks but can work with up to 16.
In RAID 5, data blocks are striped across the drives, and on one drive, a parity checksum of all the block data is written. The parity is computed by performing XOR operation of a bit from drive 1 with a bit from drive 2 and storing the result on drive 3. This parity data is not written to a fixed drive, they are spread across all drives.
Using the parity data, the computer can recalculate the data of one of the other data blocks, should that data no longer be available. This means a RAID 5 array can withstand a single drive failure without losing data.
The main advantage of RAID level 5 is that it balances both performance and reliability.
3.4. Level 6 – Stripping with Double Parity
RAID 6 is similar to RAID 5 with one exception. In RAID 6, the parity data is written to two disks. This means we need a minimum of four disks to configure RAID level 6. Moreover, a RAID level 6 system can manage two drives’ failures simultaneously.
Although a RAID 6 system is more secure than their other counterparts, it comes with a cost. The write operation is much slower due to the additional parity data. RAID 6 is preferable over RAID 5 due to the additional level of fault tolerance. It’s an all-round system that combines efficient storage with excellent security and decent performance.
3.5. Level 10 – Combination of RAID 1 and RAID 0
This approach combines the benefits of both RAID 0 and RAID 1 in a single system. This hybrid RAID configuration provides security by mirroring all data on secondary drives while using striping across each set of drives to speed up data transfers.
The main advantage of RAID 10 is that recovering from failures is high due to the mirroring of data. However, as is the case when using RAID 0, we lose half of the storage capacity due to mirroring.
4. RAID vs Traditional Data Backup
Although RAID provides reliability against disk failure, it’s no replacement for traditional disk backup. A RAID 1 system can withstand one disk failure, and a RAID 6 system even tolerates two disk failures simultaneously. However, to prevent data loss we still need to perform back-up from RAID systems for the following reasons:
- Backups let us restore data if data is lost across all disks
- We can keep backups in off-site locations and use them to restore data if required
In this tutorial, we discussed RAID and its importance in terms of system performance and data reliability.
We then discussed various RAID levels and their merits and demerits. We have also explored how each RAID level can assist in data reliability and I/O performance.
Finally, we concluded with a discussion on using RAID and the need for data back up.