What is RAID?
RAID or redundant array of independent disks is a data storage virtualization technology that combines multiple physical disk drive components into one or more logical units for data redundancy, performance improvement, or both. With RAID enabled on a storage system you can connect two or more drives in the system so they act as one large volume fast drive or set them up as one system drive used to automatically and instantaneously duplicate (or mirror) your data for real-time backup.
It is a way of storing the same data in different places on multiple hard disks or solid-state drives to protect data in the case of a drive failure. A RAID system consists of two or more drives working in parallel. These can be hard discs, but there is a trend to use SSD technology (Solid State Drives).
RAID combines several independent and relatively small disks into single storage of a large size. The disks included in the array are called array members. The disks can combine into the array in different ways, which are known as RAID levels.
Performance shows the change in the read and writes speed of the entire array compared to a single disk. The array's capacity is determined by the amount of user data written to the array. The array capacity depends on the RAID level and does not always match the sum of the RAID member disks' sizes. To calculate the particular RAID type's capacity and a set of member disks
RAID systems can use with several interfaces, including SATA, SCSI, IDE, or FC (fiber channel.) Some systems use SATA disks internally but that have a FireWire or SCSI interface for the host system.
How RAID works
RAID works by placing data on multiple disks and allowing input/output (I/O) operations to overlap in a balanced way, improving performance. Because using multiple disks increases the mean time between failures, storing data redundantly also increases fault tolerance.
RAID arrays appear to the operating system (OS) as a single logical drive.
RAID employs the techniques of disk mirroring or disk striping. Mirroring will copy identical data onto more than one drive. Striping partitions help spread data over multiple disk drives. The stripes of all the disks are interleaved and addressed in order. Disk mirroring and disk striping can also be combined in a RAID array.
A RAID controller is a device used to manage hard disk drives in a storage array. It can be used as a level of abstraction between the OS and the physical disks, presenting groups of disks as logical units. Using a RAID controller can improve performance and help protect data in case of a crash.
A RAID controller may be hardware- or software-based. In a hardware-based RAID product, a physical controller manages the entire array. The controller can also be designed to support drive formats such as Serial Advanced Technology Attachment and Small Computer System Interface. A physical RAID controller can also be built into a server's motherboard.
Standard Raid Levels
RAID devices use many different architectures, called levels, depending on the desired balance between performance and fault tolerance. RAID levels describe how data is distributed across the drives. Standard RAID levels include the following:
- Level 0 (striped disk array without fault tolerance): Level
0 provides data striping but no redundancy. This improves performance but does
not deliver fault tolerance, meaning all data is lost if one drive fails.
- Level 1 (mirroring and duplexing): Level 1 provides disk mirroring. It offers twice the read transaction rate and the same write transaction rate of single disks.
- Level 2 (error-correcting coding): Not a typical implementation and rarely used, Level 2 stripes data at the bit level rather than the block level.
- Level 3 (bit-interleaved parity): Level 3 provides byte-level striping with a dedicated parity disk. It cannot service simultaneous multiple requests, so it also is rarely used.
- Level 4 (dedicated parity drive): A commonly used implementation of RAID, Level 4 provides block-level striping (like Level 0) with a parity disk. If a data disk fails, the parity data is used to create a replacement disk. A disadvantage to Level 4 is that the parity disk can create write bottlenecks.
- Level 5 (block interleaved distributed parity): Level 5 provides data striping at the byte level and also stripe error correction information. This results in excellent performance and good fault tolerance. Level 5 is one of the most popular implementations of RAID and is patented by IBM.
- Level 6 (independent data disks with double parity): Level 6 provides block-level striping with parity data distributed across all disks.
- Level 10 (a stripe of mirrors): Level 10 creates multiple RAID 1 mirrors and an umbrella RAID 0 stripe.
Non-standard Raid Levels
Some devices use more than one level in a hybrid or nested arrangement, and some vendors also offer non-standard proprietary RAID levels. Examples of non-standard RAID levels include the following:
- Level 0+1 (a mirror of stripes): In this level, two RAID 0 stripes and an umbrella RAID 1 mirror are created. Level 0+1 is used for both replicating and sharing data among disks.
- Level 7: Level 7 is a trademark of Storage Computer Corporation that adds caching to Levels 3 or 4.
- RAID 1E: RAID 1E is a RAID 1 implementation with more than two disks. Data striping is combined with mirroring each written stripe to one of the remaining disks in the array.
- RAID S: Also called Parity RAID, RAID S is EMC Corporation’s proprietary striped parity RAID system used in its Symmetrix storage systems.