ZFS
What Is ZFS?
ZFS is an integrated filesystem and storage-management architecture designed around storage pools, end-to-end checksumming, copy-on-write behavior and software-defined redundancy. Instead of relying on a traditional RAID layer beneath an unrelated filesystem, ZFS manages both the logical data and the storage structures that contain it.
This allows ZFS to verify stored data with checksums and, when sufficient redundant information is available, reconstruct and repair damaged blocks.
Drives → VDEVs → Zpool → Datasets
Understanding these four layers makes the rest of ZFS much easier to understand.
Physical Drives
HDDs, SSDs, NVMe devices and other supported block storage provide the underlying physical capacity.
VDEVs
Physical devices are organized into VDEVs such as mirrors, RAIDZ1, RAIDZ2 or RAIDZ3.
VDEVs Explained →Zpool
One or more top-level VDEVs provide storage capacity to a ZFS storage pool.
Zpool Explained →Datasets
Filesystems, volumes and other datasets use capacity from the storage pool.
Start With ZFS Storage Architecture
These foundational articles explain the major building blocks used throughout the rest of the ZFS knowledge base.
What Is ZFS?
Understand ZFS storage architecture, checksums, copy-on-write, pooling and integrated redundancy.
Read Guide →Zpool
Learn how ZFS combines top-level VDEVs into a shared storage pool.
Read Guide →ZFS VDEVs
Understand mirrors, RAIDZ groups, top-level VDEVs and why VDEV topology matters.
Read Guide →RAIDZ1, RAIDZ2 & RAIDZ3
RAIDZ distributes data and parity across multiple storage devices. The RAIDZ level determines how many member-device failures each VDEV can tolerate.
RAIDZ1
Provides single-parity protection and can tolerate one unavailable member device within the VDEV.
RAIDZ1 Explained →RAIDZ2
Provides double-parity protection and can tolerate two unavailable member devices within the VDEV.
RAIDZ2 Explained →RAIDZ3
Provides triple-parity protection and can tolerate three unavailable member devices within the VDEV.
RAIDZ3 Explained →RAIDZ Fault Tolerance & Capacity
| Layout | Parity | Failures Tolerated | Simplified Raw Capacity | Primary Tradeoff |
|---|---|---|---|---|
| RAIDZ1 | Single | 1 device | (N − 1) × drive size | Greater capacity efficiency |
| RAIDZ2 | Double | 2 devices | (N − 2) × drive size | More redundancy, less usable capacity |
| RAIDZ3 | Triple | 3 devices | (N − 3) × drive size | Maximum standard RAIDZ protection |
Capacity formulas are simplified raw estimates for equal-size drives. Actual usable ZFS capacity is lower after formatting, metadata, allocation and operational free-space considerations.
ZFS Mirrors
ZFS does not require RAIDZ. A pool can instead be built from mirrored VDEVs that store redundant copies of data across multiple member devices.
Mirrors are often attractive for workloads that value random I/O, low latency, straightforward expansion and recovery characteristics more than maximum capacity efficiency.
Compare ZFS Storage Layouts
Use these comparison guides to evaluate capacity, redundancy, performance and recovery tradeoffs.
RAIDZ1 vs RAIDZ2
Compare single and double parity, usable capacity, failure tolerance and resilver risk.
View Comparison →RAIDZ2 vs RAIDZ3
Compare double and triple parity for large-capacity pools and fault-tolerant storage.
View Comparison →ZFS Mirror vs RAIDZ
Compare random I/O, sequential workloads, capacity, expansion and failure behavior.
View Comparison →ZFS vs Traditional RAID
Compare ZFS's integrated storage architecture with conventional hardware and software RAID.
View Comparison →Checksums Help ZFS Detect Corruption
ZFS associates stored data with checksums. When a block is read, ZFS can verify whether the returned data matches the checksum associated with that block.
Scrubbing, Resilvering & Snapshots
Redundancy is only one part of ZFS operations. Administrators also need to understand integrity verification, drive replacement and point-in-time data protection.
ZFS Scrub
Learn how a scrub reads pool data, verifies checksums and repairs corruption when valid redundancy exists.
ZFS Scrub Explained →ZFS Resilvering
Understand how ZFS reconstructs required data after replacing or restoring a storage device.
Resilvering Explained →ZFS Snapshots
Learn how ZFS snapshots preserve point-in-time states of datasets without creating a traditional full copy.
Snapshots Explained →ZFS Scrub vs Resilver
A scrub proactively verifies stored pool data against its checksums. A resilver restores data that ZFS knows needs to be reconstructed on a device.
ZFS Still Depends on the Underlying Hardware
ZFS provides sophisticated storage management, but drive technology, interfaces, memory and controller configuration still strongly influence reliability and performance.
ZFS Generally Benefits From Direct Drive Visibility
Because ZFS manages redundancy and storage integrity itself, ZFS deployments are commonly designed so the operating system can see and manage the individual storage devices directly.
HBAs or appropriate pass-through/JBOD configurations are therefore commonly preferred over placing ZFS on top of a conventional hardware RAID logical volume.
ZFS Is Not a Backup
RAIDZ, mirrors, checksums, scrubbing and snapshots provide useful protection against specific failure modes, but none should be treated as a substitute for an independent backup strategy.
Important data should be protected against accidental deletion, malicious changes, administrative mistakes, catastrophic hardware loss and site-level failures with backups appropriate for the required recovery objectives.
Browse ZFS Knowledge Base Articles
Continue Learning About Enterprise Storage
RAID Knowledge Base
Explore RAID levels, rebuilds, hot spares and controller architecture.
Enterprise Storage
Learn about SATA, SAS, NVMe, IOPS and storage interfaces.
Server Memory
Understand ECC, RDIMM, LRDIMM and enterprise memory technologies.
Compatibility Center
Learn how to validate drives, memory and server hardware before upgrading.
ZFS FAQ
What is ZFS?
ZFS is an integrated filesystem and storage-management architecture with storage pooling, checksumming, copy-on-write and redundancy capabilities.
What is a zpool?
A zpool is a ZFS storage pool built from one or more top-level VDEVs.
What is a ZFS VDEV?
A VDEV is a storage building block that can contain physical devices arranged as mirrors, RAIDZ groups or other supported layouts.
What is RAIDZ?
RAIDZ is ZFS's parity-based redundant VDEV architecture. RAIDZ1 uses single parity, RAIDZ2 double parity and RAIDZ3 triple parity.
Is RAIDZ the same as RAID?
No. RAIDZ has parity concepts comparable to some traditional RAID levels but operates as part of the integrated ZFS storage architecture.
What is the difference between RAIDZ1 and RAIDZ2?
RAIDZ1 provides single parity and one-device fault tolerance, while RAIDZ2 provides double parity and two-device fault tolerance within each VDEV.
Are ZFS mirrors faster than RAIDZ?
Mirrors often provide stronger small random I/O characteristics, while RAIDZ can provide greater capacity efficiency and strong sequential performance.
What does a ZFS scrub do?
A scrub reads allocated pool data, verifies checksums and can repair damaged blocks when valid redundancy exists.
What is ZFS resilvering?
Resilvering restores required data onto a replacement or returning storage device.
Does ZFS replace backups?
No. ZFS redundancy, checksums and snapshots are useful data-protection mechanisms but do not replace independent backups.
