Some quite good btrfs compression results from my backup hosts (which back up customer data).
Type Perc Disk Usage Uncompressed Referenced TOTAL 64% 68G 105G 1.2T none 100% 24G 24G 434G zlib 54% 43G 80G 797G
Type Perc Disk Usage Uncompressed Referenced TOTAL 74% 91G 123G 992G none 100% 59G 59G 599G lzo 50% 32G 63G 393G
Type Perc Disk Usage Uncompressed Referenced TOTAL 73% 16G 22G 459G none 100% 12G 12G 269G lzo 40% 4.1G 10G 190G
Type Perc Disk Usage Uncompressed Referenced TOTAL 71% 105G 148G 1.9T none 100% 70G 70G 910G zlib 40% 24G 60G 1.0T lzo 58% 10G 17G 17G
So that’s 398G that takes up 280G, a 29.6% reduction.
The “none” type is incompressible files such as media that’s already compressed. I started off with lzo compression but I’m switching to zlib now as it compresses more and this data is rarely accessed so I’m not too concerned about performance. I need newer kernels on these before I can try zstd.
I’ve had serious concerns about btrfs before based on issues I’ve had using it at home, but these were mostly around multiple device usage. Here they get a single block device that has redundancy underneath so the only remotely interesting thing that btrfs is doing here is the compression.
Might try some offline deduplication next.