User Tools

Site Tools


ZFS Compression - When to use it

For compression, the time/cpu cost is 95% front loaded. The biggest cost is in compression. Decompression is pretty meaninglessly slower. For something that would take 90 seconds, to read, it would take maybe 92-95 seconds to read with compression (maybe less).

Decompression can significantly affect speed since it can be faster if disk access is your bottleneck. Retrieving compressed data it gets more data per IO, which cuts total disk activity. Compression can too, but often slows instead of speeding up (because compression takes vastly more time than decompression).

So, there is a soft, fuzzy area where compression is entirely beneficial. This is where lzjb and zle live. LZJB and ZLE try to be both free (cpu time), and space saving, which can speed up both reads and writes.

Compression with gzip can slow writes down to as much as 1/3 the original write speed, or be marginally faster. But even if little/no compression takes place, reads should be no worse than a few percent slower, but probably a few percent faster in general.

All of this is directly affected by the type of data being stored.

Additional reading

zfs/compression/when_to_use_zfs_compression.txt · Last modified: 2018/07/08 17:57 (external edit)