RAID controller caches can significantly increase performance when writing data. A typical example for such a cache might consist of 256, 512 or 1024 MB. Usually RAID system measures the cache in Megabytes. If the power were to fail, the content of this cache would be lost, unless the content has been protected by a battery backup unit (BBU) or battery backup module (BBM). BBUs and BBMs have integrated batteries, which can generally power the content of the cache for up to 72 hours. If the server is re-started during that period, the data in the cache can be recovered.
Important RAID levels are:
RAID 0: Disk Striping, in this configuration, the server will have multiple disks and the data is striped across the disks in blocks without parity. RAID 0 has no fault tolerance.
RAID 1: Disk Mirroring, or Disk Duplexing: there are two hard disks and any thing that is written on one disk is written onto the mirrored disk. Disk Mirroring provides fault tolerance, in the sense, that if one disk fails, the mirrored disk can take place of failed disk. The difference between disk mirroring and disk duplexing is that, in case of disk mirroring only one disk controller serving both the disks, whereas in disk duplexing, additional disk controller will be controlling the mirrored disk. In RAID1, or disk mirroring, one drive in the array acts as a "mirror" drive, backing up all the data on the primary drive on-the-fly. Duplexing adds another disk controller. So in case one controller fails, the other can pick up without any interruption in service.
RAID 3: This takes a striped array as in RAID 0, then adds a parity hard disk drive to the array. This parity information is vital if one drive fails. If a drive should fail in this situation, the parity drive can be used to restore blocks that have been broken due to data corruption.
RAID 5: RAID5 is similar to mode 3, except the parity is spanned across all drives, this allows all drives to be able to rebuild the array should a drive fail. A minimum of three disks is required for RAID 5. In case of a single disk failure, the missing data can be calculated using the parity. RAID 5 is not a good choice because it doesn't offer faster read cycles as that of disk striping. RAID 5 utilizes the combination of striping and parity techniques. The capacity of the array is (N-1) times the size of the smallest member disk for the array of N disks
RAID 6: RAID6 also known as double-parity RAID, uses two parity stripes on each disk. It allows for two disk failures within the RAID set before any data is lost. A minimum of four disks is required to create RAID 6. The capacity of the array is (N-2) times the size of the smallest member disk for the array of N disks. RAID 6 is relatively expensive storage option. However, when it is needed a large and reliable storage, then RAID 6 is one of the best choices, because it protects data if two disks failure happens.
RAID 10: IN RAID10 READ and WRITE operations are much faster than RAID 6, and also the rebuilding a failed RAID is also faster in RAID 10. Hence, it is recommended to go for RAID 10 unless you have specific needs for redundancy that mandates RAID 6. A RAID 10 configuration requires a minimum of four disks, and stripes data across mirrored pairs. As long as one disk in each mirrored pair is functional, data can be retrieved. Only 50% of the total raw capacity of the drives (lowest capacity drive to be considered) is usable due to mirroring.
RAID levels comparison chart
RAID0 | RAID1 | RAID 5 | RAID6 | RAID10 | |
---|---|---|---|---|---|
Min number of disks | 2 | 2 | 3 | 4 | 4 |
Fault tolerance | None | 1 disk | 1 disk | 2 disk | 1 disk |
Disk space overhead | None | 50.00% | 1 disk | 2 disks | 50.00% |
Read speed | Fast | Fast | Slow | Fast | |
Write speed | Fast | Fair | Slow | Fair | |
Hardware cost | Cheap | High (disks) | High | Very high | High (disks) |
For example, consider a RAID configuration of 1+0 (or RAID 10), the READ speeds for different configurations are as given below:
a) 4 disks with 80 GB each:
b) 8 disks with 20GB each:
c) Minimum 4 disks are required for RAID 10. Assuming 4 disks are available with 120GB each,
d) 6 disks with 40 GB each:
As seen from the above, we can say that 8 disks provide highest READ speeds among the given options. You may check for other RAID configurations to examine the same.
RAID 5 with 9 drives provides 640GB capacity (9 -1 = 8). This is the most efficient storage solution as only one spare disk is required.
Hardware vs Software RAID
A hot spare is a spare unit that is ready to take on the job of the main unit in the even of failure. Hot spare refers to the physical unit such as a disk drive or even a standby computer, such as in a clustered configuration. The failure may or may not be noticed by clients. For example, if the RAID system is configured with RAID 0, a failure may be noticed by the clients, whereas, if configured with RAID 5, the failure may not be noticed (in case of single point failure).
The following are the benefits of hardware RAID:
1. Hardware RAID provides better performance compared to Software RAID.
2. Software RAID is usually limited to RAID levels 0, 1 and 5. It is possible to implement several other RAID combinations with Hardware RAID.
3. Hardware RAID allows multiple operating systems to access the RAID array, whereas Software RAID usually do not allow any other operating system other than the one used to create it.
4. Boot Volume Limitations: Since the operating system has to be running to enable the array, the operating system cannot boot from the RAID array! Therefore, it requires a separate, non-RAID partition to be created for the operating system.
5. One disadvantage of hardware RAID is that it is expensive.