In this post, we will look what is RAID 10, and RAID 01 and which is better in between the two.
RAID or Redundant Array of inexpensive disks is a method to copy data to some inexpensive disks in order to prevent data loss due to disk failure.
RAID provides different methods in which we can replicate the data which are known as RAID levels.
For example:- RAID 1 is known as mirroring in which data is copied exactly from one disk to another and keeps in sync.
Similarly we have 2, 3, 4, 5, 10, 01, etc RAID levels available. RAID 0 doesn’t copy data to other disk, it just concatenates data across multiple disks and hence doesn’t provide any redundancy.
Earlier we preferred RAID 5 in configuration, however nowadays we prefer to use RAID 1+0 array configuration.
RAID 10 Description
=> RAID 10 is also known as RAID 1+0
=> Also called as “stripe of mirrors”
=> A minimum of 4 disks is required for RAID 10.
To understand RAID 10 and RAID01 better, lets create two groups(for mirroring).
For example, if we have 4 disks, create two groups with 2 disks each as shown below.
For example, if you have a total of 4 disks in RAID 10, there will be two groups–Group 1, Group 2.
Within the group, the data is mirrored.
In the above example, Disk 1 and Disk 2 belongs to Group 1. The data on Disk 1 will be exactly same as the data on Disk 2.
Hence block A written on Disk 1 will be mirrored on Disk 2.
Across the group, the data is striped. i.e Block A is written to Group 1, Block B is written to Group 2.
This is why it is called “stripe of mirrors”. i.e the disks within the group are mirrored. But, the groups themselves are striped.
RAID 01 Description
=> RAID 01 is also known as RAID 0+1
=> It is also referred as “mirror of stripes”
=> Minimum 3 disks are required, however in most cases this will be implemented as minimum of 4 disks.
In the above example, Group 1 has 2 disks and Group 2 has 2 disks.
Within the group, the data is striped. i.e In the Group 1 which contains two disks, the 1st block will be written to 1st disk, and 2nd block to 2nd disk.
So, block A is written to Disk 1, block B to Disk 2.
Across the group, the data is mirrored. i.e The Group 1 and Group 2 will look exactly the same. i.e Disk 1 is mirrored to Disk 3, Disk 2 to Disk 4.
This is why it is called “mirror of stripes”. i.e the disks within the groups are striped. But, the groups are mirrored.
Main differences between RAID 10 vs RAID 01
==> Performance on both RAID 10 and RAID 01 will be approximately same.
==> The storage capacity on these RAID arrays will be same.
==> The main difference lies in the fault tolerance level.
On most implementations of RAID controllers, RAID 01 provides less fault tolerance.
On RAID 01, since we have only two groups of RAID 0, if two drives (one in each group) fails, the entire RAID 01 will fail. In the above RAID 01 diagram, if Disk 1 and Disk 3 fails, both the groups will be down. So, the whole RAID 01 will fail.
RAID 10 fault tolerance is more. On RAID 10, since there are many groups (as the individual group is only two disks), even if two disks fails (one in each group), the RAID 10 is still functional. In the above RAID 10 example, even if Disk 1, Disk 3 fails, the RAID 10 will still be functional.
Hence if there is a choice between RAID 10 and RAID 01, always prefer to use RAID 10.