The main feature of ZFS is unlimited scalability. All metadata is allocated dynamically, and there is no need to pre-allocate inodes or otherwise limit the scalability of a file system when it is created. Directories can contain up to 248 (256 trillion) entries, and there are no restrictions on the number of file systems or file types.
2. Data storage model based on the pool principle
ZFS uses the principle of storage pools to manage physical storage and eliminates volume management entirely. Instead of forcing the creation of virtualized volumes, ZFS combines devices of different characteristics (speed, size, sector) into a pool of storage devices.
The pool describes the physical characteristics of storage (device placement, data redundancy, etc.) and acts as a data storage for creating file systems. Filesystems are no longer limited to individual devices, allowing them to share space in the pool.
3. Transactional semantics
ZFS is a transactional file system that provides complete data protection. Data is managed using copy-on-write semantics. The data is never overwritten and any sequence of operations is either completely executed or completely ignored. This mechanism ensures that the file system cannot be corrupted by an unexpected power outage or complete system failure.
4. End-to-end data integrity control
In ZFS, check sums for all data and metadata are performed using an algorithm that can be selected by the user. ZFS checksums are stored in such a way that certain types of failures, such as writing an entire block to an erroneous location, resulting in incorrectly calculated checksum data, are identified and can be corrected. All operations with checksums and data recovery are carried out at the file system level and do not affect the operation of applications.
5. Self-healing data
ZFS provides the ability to self-healing data. It supports storage pools with various levels of redundancy, including RAID-5 mirroring. When a bad block is found, ZFS migrates the correct data from another backup and restores the data, replacing it with a qualitative copy.
6. Simplified administration
ZFS manages file systems through a hierarchy that provides simplified administration of properties such as quotas, reserved space, compression, and monitoring points. In this model, file systems become the central point of administration. This allows creating a file system for each user, project, desktop, etc. With this structure, you can define individual administration points more precisely.