ZFS: the Enterprise-grade File System for everyone
The Zettabyte File System (ZFS™) was designed to solve the data integrity and protection challenges that can silently plague other filesystems. Often referred to as “the last word on filesystems”, ZFS is trusted by storage experts for being one of the most scalable and reliable filesystems, unmatched in its ability to keep data intact and protected from corruption.
ZFS was originally developed and made Open Source by Sun MicrosystemsTM in 2006. After the OracleTM acquisition of Sun Microsystems, some of the original ZFS engineers founded OpenZFSTM to provide continued, collaborative development of the Open Source version. Fast forward to today, and OpenZFS is now an enhanced version of the foundational ZFS filesystem.
OpenZFS has rewritten the rules of data storage by making enterprise features and data protection available to users of all sizes. It combines volume management (including RAID) and advanced filesystem functions within a highly scalable filesystem. Instead of piecemealing a custom solution out of multiple software modules from different sources,
ZFS and TrueNAS
TrueNAS takes the raw power of ZFS even further by creating a comprehensive data sharing and management system that delivers a unified file, block, and object storage on top of ZFS. TrueNAS is often referred to as the “easy button” for ZFS storage with an integrated and powerful Web UI and comprehensive REST API that makes harnessing the power of ZFS possible for all. This is one of the reasons TrueNAS is the most widely deployed ZFS-based storage system with over 1 million installations and counting.
OpenZFS: Facts and Figures
The OpenZFS community has developed many new features and enhanced the extreme reliability for which the filesystem is known. It has been called the “billion-dollar filesystem” because of the large investments by both Sun, vendors, and the Open Source community.
- Virtually limitless capacity and scalability with both SSDs and HDDs
- Copy-on-Write architecture for data safety and efficient snapshotting
- Integrated software-defined RAID with checksums and validation
- High-performance transparent compression and inline deduplication
- Native encryption at the disk, pool, or dataset level
- Integrated Read and Write caching with options for all-flash and hybrid pools
- Integrated with FreeBSD, Linux, and many other operating systems
- >1 Million deployments as the basis of TrueNAS CORE, SCALE, and Enterprise
How Does TrueNAS and ZFS Protect Data?
TrueNAS and ZFS protect data in many unique ways including:
Integrated RAID – Software-defined RAID expands protection across disks.
Self-healing – Automatic detection and repair of any data corruption.
Incremental Snapshots – Frequent snapshots let you roll back file versions easily.
Replication – Replicate data offsite, to the cloud, or to another onsite system.
Backup Target – Integrate with existing IT Backup solutions like Veeam and Asigra.
High Availability – Dual controllers enable maximum uptime on Enterprise systems.
ZFS Concepts and Terms
ZFS is Enterprise-grade and highly scalable, requiring new concepts and terminology to differentiate its practices from standard filesystems:
- A collection of drives used for a single ZFS filesystem. This pool is an aggregation of one or more vdevs.
- A top-level RAID “virtual device” comprising one or more drives. These drives can be striped, mirrored, or use RAIDZ.
- A RAID algorithm with either single (Z1), dual (Z2), or triple (Z3) parity for data protection. If a drive fails, the data is rebuilt (aka “resilvered”) to a spare drive.
- An additional integrity check on data that is written separately from the data. It is used for detection and repair of data corruption continuously and via a “scrub” process.
- A virtual filesystem without the restrictions of a fixed-size partition. Each Dataset can be snapshotted, cloned, and configured for its use case. Each Dataset can have child datasets with their own properties.
- A special type of dataset of block storage (iSCSI or FC).
- A point-in-time state of the data that does not get changed when new data is written. Each snapshot can preserve archival data, be replicated to another system, or be used to rollback after a bad event such as a ransomware attack.
- ZIL / SLOG
- A “Separate intent log” (SLOG) is a high speed write cache device for storing the “ZFS intent log” (ZIL). It maximizes ZIL performance by aggregating random writes into sequential writes, thereby accelerating write performance and ensuring data integrity during power failure or failover events.
- With ZFS, the hottest data is cached and read from system RAM. A “level 2 adaptive replacement cache” (l2arc) can be added as a second caching layer to further accelerate reads by dynamically filling and flushing additional hot data that cannot fit into RAM.