In case you receive something promised and / or expected long ago, there is a saying "And half a year has not passed." In the case of OpenZFS 2.0, everything is a little longer: we have been waiting for this release not six months, but one and a half. You can read about what kind of project it is and what its positive aspects are in a detailed article on Habré .
In short, this project is positioned as "ZFS on Linux". Previously, he limited himself to developing a module for the Linux kernel. Support for FreeBSD was later added, so the mention of Linux was removed from the name. Well, today we'll take a look at what's new in the second version.
OpenZFS is part of FreeBSD (HEAD), upstream, and also part of the Debian, Ubuntu, Gentoo, Sabayon Linux and ALT Linux distributions. The new version is coming soon to Debian, Ubuntu, Fedora, RHEL / CentOS and other distributions.
What's new?
- The main thing is that there is support for FreeBSD . Also, the developers have unified the code base to support various operating systems.
- FreeBSD, OpenZFS, ZFS FreeBSD. FreeBSD , « » . , , , , (allocation classes), RAIDZ , ZSTD, multihost (MMP, Multi Modifier Protection) .
- Zstandart, 3-5 , zlib/Deflate. , — 10-15%.
- zfs send/receive, . , . — - . «zfs redact» «zfs send --redact».
- «resilver» (sequential resilver), . vdev , resilver. , — scrub .
- , L2ARC, . , «», .
- :
- "zfs wait", "zpool wait" - waits for completion of background work (resilver, scrub, trim, etc.).
- "zfs send --saved" - allows you to save an incompletely received data set.
- "zfs jail", "zfs unjail" - attach and detach ZFS from FreeBSD jail environments.
- "zfs rename -u" - renames filesystem without remounting.
- "zfs umount -u" - unloads encryption keys at the moment of FS unmounting.
- "zfs bookmark fs # target fs # newbookmark" - creates a copy of the bookmark with a new name.
- New options for performance optimization have been implemented:
- Accelerated the process of deleting clones and background cleaning when executing the command "zfs destroy".
- Improved performance of zfs send / zfs receive commands when processing small records.
- Improved the scalability of the zfs share command.
- Improved the efficiency of the ARC adaptive replace cache and memory management.
- Improved write speed in highly fragmented pools.
- Optimized AES-GCM encryption mode.
- Added optimizations using SIMD vector processor instructions.
- Also, the developers have declared deprecated support for data deduplication when sending streams with the command "zfs send -D" and the pool parameter dedupditto. Writing of new dedupditto blocks has stopped.