Data protection & recovery

RAID

RAID (redundant array of independent disks) is a technique that combines several drives into one logical unit to improve reliability, performance or both. Depending on the level, data is striped across drives, mirrored, or protected with parity so that the array survives the failure of one or more drives.

What are the common RAID levels?

Levels differ in how many drive failures they tolerate and how much capacity they spend on protection.

LevelMethodDrive failures toleratedUsable capacity
RAID 0Striping, no redundancyNone100 percent
RAID 1MirroringOne per mirror pair50 percent
RAID 5Striping with single parityOneAll but one drive
RAID 6Striping with double parityTwoAll but two drives
RAID 10Striped mirrorsOne per pair50 percent

How does RAID protect data?

Mirroring keeps an identical copy on a second drive. Parity stores a calculated value across the group from which any one missing drive's contents can be worked out, or two with double parity. When a drive fails, the array keeps running in a degraded state and reconstructs the missing data onto a replacement, a data rebuild. RAID is implemented by a hardware controller or by software in the operating system.

Where does RAID reach its limits?

RAID was designed when drives were small. With drives of many terabytes, a rebuild takes a day or more, during which a further failure in a single-parity group loses the array. The chance of hitting an unreadable sector during such a long rebuild is also significant, which is why single parity is no longer recommended for large drives. RAID protects only against drive failures within one enclosure. It does not help when the server, its controller or the site fails. And it is not a backup: deletions and corruption are applied to all drives at once.

How does RAID compare with erasure coding?

Erasure coding generalizes the parity idea. Data is split into fragments with additional coded fragments, and the set is spread across many servers or sites instead of the drives in one group. It can tolerate more simultaneous failures, including whole servers, with similar or lower capacity overhead, and it rebuilds in parallel from many sources. Distributed storage systems use it in place of RAID and run on plain disks, described under JBOD. RAID remains common inside individual servers and smaller arrays. Erasure coding versus replication compares the scale-out options.

Frequently asked questions

Is RAID a backup?

No. RAID keeps a system running through a drive failure. It does not protect against deletion, corruption, ransomware or loss of the whole system.

Which RAID level is best?

It depends on the goal. RAID 6 and RAID 10 are the usual choices where data matters, trading capacity for tolerance of failures.

What is the difference between hardware and software RAID?

Hardware RAID uses a dedicated controller. Software RAID is done by the operating system. Both implement the same levels.