ZFS Compression: Difference between revisions

From Lustre Wiki
Jump to navigation Jump to search
No edit summary
(Merge into ZFS, pending deletion)
Tag: Replaced
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Notes on enabling and working with zfs compression
see
 
[[ZFS#compression]]
We assume this is for zfs on lustre, but will work the same for standalone zfs. To do this on a lustre/zfs system, you have to perform these commands on every OST in the system. I would definitely not bother doing this on metadata.
 
'''NOTE'' - here I'll assume you always work on a whole pool or filesystem, but these commands should work on any arbitrary directory too.
 
<STORAGE> = the pool, filesystem, or directory you choose.
 
== Check ZFS compression ==
<pre>zfs get compression <STORAGE></pre>
== Set ZFS compression ==
 
<pre>zfs set compression=on <STORAGE></pre>
turns on compression with default algorithm (lzjb). You can chose values other than "on" for the compression algorithm, see 'man zfs' for details.
To use a different algorithm, use for example "compression=lz4" instead of "on".
 
'''lz4''' is likely the best choice now. It has been tested extensively, and provides very good compression balanced with performance. Basically, it stops trying to compress after compressing some initial part of the data and getting poor results. ''Details from experts on this topic is needed''
I think you might only need to set this on pools, and filesystems should inherit, but to be safe, you can apply it to everything.
== Check compression ratio ==
<pre>zfs get compressratio <STORAGE></pre>

Latest revision as of 12:21, 5 June 2026