RAID Capacity Calculator
Compute usable capacity, fault tolerance, and write penalty for RAID 0, 1, 5, 6, 10, and ZFS RAIDZ levels.
Understanding RAID Capacity and Redundancy
RAID (Redundant Array of Independent Disks) combines multiple physical drives into a single logical unit to improve reliability, performance, or both. The concept was formalized by Patterson, Gibson, and Katz at UC Berkeley in 1988, and the numbered levels (0 through 6) describe different strategies for distributing data and parity across drives.
RAID 0 stripes data across all disks with no redundancy, maximizing throughput but offering zero fault tolerance. RAID 1 mirrors every write to all member disks, providing the highest redundancy but using only one disk's worth of capacity. RAID 5 distributes parity across all disks, allowing the array to survive one disk failure while using (N-1) disks of capacity. RAID 6 adds a second independent parity block, tolerating two simultaneous failures. RAID 10 combines mirroring and striping, using half the raw capacity but delivering low write penalty and high IOPS.
ZFS introduced RAIDZ as a software alternative that eliminates the write hole vulnerability of traditional hardware RAID 5. RAIDZ uses variable-width stripes and full-block checksums to detect and correct silent data corruption. RAIDZ2 and RAIDZ3 offer double and triple parity, equivalent to RAID 6 and beyond. The capacity formulas are the same as their RAID counterparts, though ZFS's copy-on-write architecture introduces additional overhead that varies with record size.
Frequently Asked Questions
Which RAID level should I choose?
RAID 5 is common for file servers where a balance of capacity and protection is needed. RAID 6 or RAIDZ2 is recommended for large arrays (more than 8 disks) because the rebuild time on modern high-capacity drives increases the risk of a second failure during recovery. RAID 10 offers the best write performance and is favored for databases. RAID 0 has no redundancy and should only be used for scratch space or cached data that can be recreated.
Why is RAID 5 risky with large drives?
Modern consumer drives (4 TB and above) have an unrecoverable read error (URE) rate of about 1 in 10^14 bits. During a RAID 5 rebuild of a 4 TB drive, the controller reads roughly 3.2×10^13 bits from each remaining disk. With four or more disks, the probability of encountering a URE during rebuild becomes non-trivial, potentially losing the entire array. RAID 6 or RAIDZ2 mitigates this by tolerating two simultaneous failures.
What is write penalty in RAID?
Write penalty is the number of disk I/O operations required per logical write. In RAID 5, a random small write requires four I/Os: read old data, read old parity, write new data, write new parity. RAID 6 requires six I/Os because it maintains two parity blocks. RAID 10 requires two I/Os (one write per mirror). RAID 0 has no penalty (1:1). Sequential writes are less affected because the controller can calculate parity from new data without reading old blocks.
What is the difference between RAIDZ and RAID 5?
ZFS RAIDZ is functionally similar to RAID 5 (single-parity, N-1 usable disks). The key difference is implementation: RAIDZ uses variable-width stripes to avoid the RAID 5 write hole (a power failure during a partial stripe write can leave parity inconsistent). RAIDZ also checksums all data and metadata, detecting silent corruption that traditional RAID controllers miss. RAIDZ2 and RAIDZ3 are equivalent to RAID 6 and triple-parity respectively.
Does this calculator account for filesystem overhead?
No. This calculator shows raw usable capacity based on the RAID formula alone. Actual formatted capacity is lower because filesystems (ext4, XFS, NTFS, ZFS) reserve space for metadata, journals, and internal structures. ZFS also has additional overhead from its copy-on-write design and variable-width RAIDZ stripes. Expect 2-10% less space in practice, depending on the filesystem and configuration.