A Detailed Illustrated Guide to RAID Technology
RAID, short for Redundant Array of Independent Disks, refers to combining multiple disks (either mechanical hard disks or solid-state drives) into a single large logical disk partition. Its core concept is to distribute data across multiple hard disks; some RAID modes also include redundant backups. This approach not only improves read/write speeds but also ensures data security in the event of hardware failures. The operating system recognizes the entire disk array as a single large storage device, simplifying management and enabling dynamic capacity expansion.
How RAID Works
Before explaining the working principle, let’s clarify several underlying concepts:
- Striping: Data is divided into fixed-size blocks (Chunk/Stripe Unit, e.g., 64KB, 256KB) and distributed sequentially across different disks to enable parallel read/write operations.
- Mirroring: The same data is written simultaneously to multiple disks (used in RAID 1/10), providing a complete redundancy mechanism.
- Parity: Mathematical algorithms are used to calculate redundant information for a set of data (used in RAID 5/6). If one or two disks fail, lost data can be reconstructed using this parity information.
The working principle of RAID involves storing data across multiple disks and allowing input/output (I/O) operations to be processed in a balanced, overlapping manner—this boosts read/write performance. Using multiple disks also enhances fault tolerance.
RAID employs either mirroring or striping technology. Mirroring duplicates the same data onto multiple disks, while striping helps distribute data across multiple disks. The storage capacity of each disk is divided into units ranging in size from 512-byte sectors to several megabytes. These disk stripes are arranged in an interleaved pattern and addressed sequentially. Some RAID technologies combine both mirroring and striping.
RAID Levels
Initially, RAID technology only had a few standard levels (0–5). With technological development, additional RAID levels have emerged, which can be categorized into three types: Standard RAID Levels, Nested RAID Levels, and Non-Standard RAID Levels. This article details several commonly used RAID levels.
1. Standard RAID Levels
1.1 RAID 0
RAID 0 features striping functionality. It connects two or more disks in parallel to form a large-capacity disk. When writing data, RAID 0 segments the data and distributes it across each disk in the array. Since all read/write operations are processed in parallel, RAID 0 delivers the best performance among all RAID levels and offers the highest disk utilization rate (100%).However, RAID 0 sacrifices redundancy— it has no fault tolerance. If even one disk in the RAID 0 array fails, all data will be lost instantly.

RAID0
1.2 RAID 1
RAID 1, also known as disk mirroring, requires at least two disks. When the system reads data from RAID 1, it can read from any of the disks simultaneously—thus improving read performance. Write performance is roughly the same as that of a single disk.
The principle of RAID 1 is to write data to one disk while simultaneously writing identical data to another "mirror" disk. If one disk fails, the mirrored disk takes over read/write operations seamlessly.
RAID 1 offers the best data security among all RAID levels. However, regardless of how many disks are used in a RAID 1 array, only the capacity of one disk is counted—resulting in the lowest disk capacity utilization rate (up to 50%) among all levels.
If two disks of different capacities are used to form a RAID 1 array, the available space is limited to the capacity of the smaller disk. The remaining capacity of the larger disk can be partitioned and used independently, avoiding waste.

RAID1
1.3 RAID 5
RAID 5 is a balanced solution that balances storage performance, data security, and storage costs. Instead of simply backing up data to other disks, it uses block-level striping with parity. Data and corresponding parity information (calculated via simple XOR operations) are distributed across all disks in the RAID 5 array. Critically, parity information and data are stored on different disks.
If one disk in the RAID 5 array fails, lost data can be reconstructed using the remaining normal data and the corresponding parity information. RAID 5 requires at least three hard disks and can tolerate the failure of one disk.
It offers read speeds comparable to RAID 0 but slightly slower write speeds (due to parity calculations). RAID 5 has higher disk space utilization than RAID 1 and lower storage costs. However, it is generally considered a poor choice for write-intensive systems, as writing parity data impacts performance. Additionally, reconstructing a RAID 5 array after a drive failure can take a long time. RAID 5 is commonly used for personal or enterprise backups where maximum capacity and minimal budget are priorities.

RAID 5
1.4 RAID 6
Compared to RAID 5, RAID 6 adds a second independent parity block and uses two different algorithms: one (called "p") can be the simple XOR parity algorithm used in RAID 5, and the other (called "q") is a more complex parity algorithm. This design gives RAID 6 extremely high data reliability—it can tolerate the simultaneous failure of any two disks without compromising data integrity.
RAID 6 requires at least four disks. However, the additional protection comes with higher costs: write performance is typically slower than RAID 5 (due to the extra parity block), and RAID 6 is rarely implemented via software. Instead, it is more commonly implemented via hardware (e.g., RAID controller cards) because it involves heavier I/O operations and computational loads. RAID 6 is the most common disk array level in hardware RAID cards and is suitable for applications similar to RAID 5 but requiring higher security.

RAID 6
2. Nested RAID Levels
2.1 RAID 10 (RAID 1+0)
RAID 10 combines RAID 1 and RAID 0: it first creates mirrored pairs (RAID 1), then treats each entire RAID 1 pair as a single logical disk and applies striping (RAID 0) across these pairs.
RAID 10 integrates the advantages of RAID 0 (high performance) and RAID 1 (data protection via redundancy) but comes with higher costs. Even if one hard disk fails, the remaining disks continue to operate, ensuring high security. RAID 10 is commonly used in large databases and servers.

2.2 RAID 01 (RAID 0+1)
RAID 01 is similar to RAID 10 but differs in data storage: it first creates a striped array (RAID 0), then mirrors the entire stripe set (RAID 1).
RAID 01 has lower reliability than RAID 10: if one disk in a RAID 0 stripe set fails, the entire RAID 0 set stops functioning.

2.3 RAID 50 (RAID 5+0)
RAID 50 combines RAID 5 and RAID 0: it first creates multiple RAID 5 arrays, then applies striping (RAID 0) across these RAID 5 sets.
RAID 50 requires at least 6 disks (2 RAID 5 sets × 3 disks each). It can tolerate the failure of one disk in any underlying RAID 5 set while maintaining normal operations. However, if two or more disks fail in any single RAID 5 set, the entire RAID 50 array becomes invalid.
RAID 50 offers better performance than standalone RAID 5 (thanks to the outer RAID 0 layer) but has lower capacity utilization.

RAID 50
2.4 RAID 60 (RAID 6+0)
RAID 60 combines RAID 6 and RAID 0: it first creates multiple RAID 6 arrays, then applies striping (RAID 0) across these RAID 6 sets.
RAID 60 requires a minimum of 8 disks. It can tolerate the failure of up to two disks in any underlying RAID 6 set while keeping the system operational. RAID 60 delivers better performance than standalone RAID 6 (due to the outer RAID 0 layer) but has a high entry barrier and low capacity utilization.

RAID60
3. Non-Standard RAID Levels
Non-standard RAID levels have unique characteristics distinct from standard levels. They are typically developed by companies or organizations for specific purposes.
3.1 Adaptive RAID
This type of RAID allows the RAID controller to decide how to store parity on disks. It can switch between RAID 3 and RAID 5, depending on which RAID type delivers better performance for the data being written to the disks.
3.2 Linux MD RAID 10
This level is provided by the Linux kernel and supports the creation of nested and non-standard RAID arrays. Linux software RAID also supports the creation of standard RAID configurations (RAID 0, RAID 1, RAID 4, RAID 5, and RAID 6).
Quick Overview of Common RAID Levels
| Level | Mechanism | Minimum Disks | Usable Capacity (per disk capacity = S) | Fault Tolerance | Typical Features |
|---|---|---|---|---|---|
| RAID 0 | Pure Striping | 2 | N × S | 0 disks | Best performance, no redundancy, high risk |
| RAID 1 | Mirroring | 2 | (N/2) × S (usually paired mirroring) | 1 disk per mirror set | Secure and reliable, low capacity utilization |
| RAID 5 | Striping + 1 Parity | 3 | (N-1) × S | Any 1 disk | High capacity efficiency, high risk during reconstruction |
| RAID 6 | Striping + 2 Parities | 4 | (N-2) × S | Any 2 disks | Suitable for large-capacity HDDs, safer during reconstruction |
| RAID 10 (1+0) | Mirroring first, then Striping | 4 | (N/2) × S | 1 disk per mirror set | Strong random write performance, high reliability, high cost |
| RAID 01 (0+1) | Striping first, then Mirroring | 4 | (N/2) × S | Fails if an entire stripe set fails | Same capacity as RAID 10, poorer fault tolerance (stripe set risk) |
| RAID 50 (5+0) | Multiple RAID 5 sets + Striping | 6 (2 sets × 3 disks) | (N – Number of sets) × S | 1 disk per RAID 5 set | Balanced performance and capacity, better fault tolerance than RAID 5 |
| RAID 60 (6+0) | Multiple RAID 6 sets + Striping | 8 (2 sets × 4 disks) | (N – 2 × Number of sets) × S | Up to 2 disks per RAID 6 set | Preferred for large arrays, high fault tolerance, higher cost |
Finally, we recommend Western Digital’s official RAID Capacity Calculator:
https://www.westerndigital.com/zh-cn/tools/raid-capacity-calculator
