RAID can be an invaluable resource and is something that all sysadmins should consider leveraging, before beginning any new server deployment. In this post, I'll briefly describe the four main RAID types, when you might want to use that RAID type and what it does.
RAID 0 - Increased speed and risk of data loss
RAID 0 is the only RAID type without fault tolerance. It is also by far the fastest RAID type.
RAID 0 works by using striping, which disperses system data blocks across several different disks. This allows the the server to leverage the speed of multiple disks, meaning that in theory, the more disks you add to the array, the faster the array will become. For example, if you have four 6Gbps SATA drives in an array, your RAID volume could potentially reach speeds of up to 24Gbps. Unfortunately, if any one of these drives fail, all data will be lost.
RAID 1 - Data redundancy and reduced write speed
RAID 1 works by using mirroring to duplicate your data between two disks. RAID 1 is typically implemented using two disks, and sometimes with a third disk that is used as a hot spare, in order to prevent downtime in the event of a disk failure. It provides excellent read speeds due to there being multiple drives available to access your data from, and will always retrieve your data from the quickest drive. Unfortunately, disk write speeds are decreased when using software RAID, as the operating system will have to write all data twice; once to each disk. Hardware RAID controllers are typically utilised when faster write speeds are required as the operating system will write to the RAID controller, which will in turn write to each disk.
RAID 1 should be deployed on mission critical servers.
RAID 10 - Increased speed and fault tolerance
RAID 10 operates by joining multiple RAID 1 arrays together using striping (RAID 0), hence the name RAID 10. It provides increased security as the array can withstand multiple drive failures, while still having excellent speed due to the RAID 1 arrays being striped together. In order to implement this RAID type, a minimum of four drives will be required.
RAID 10 is hugely scalable, as it allows you to add new RAID 1 mirrors in order to grow the RAID 10 array. It is the RAID level of choice for enterprise operations requiring fault tolerance and high disk speeds.
RAID 5 - Increased read speed and fault tolerance
RAID 5 utilises a combination of striping and parity to achieve fault tolerance with improved read speeds. It requires a minimum of three drives to implement.
Each drive in the array sets aside a portion of itself for parity. In the event of a drive failure, the array will use the parity on the remaining drives to recover any data that was being stored on the failed drive. However, reading from parity is slow, so there will be reduced performance until the problem drive has been replaced.
RAID 5 is typically used on mission critical servers with some budget constraints, when disk space is a priority.
- Updated