天天看点

ZFS compression algorithm lzjb, gzip, gzip-[0-9], zle, lz4 compare

zfs提供几种压缩算法, 

lzjb, gzip, gzip-[0-9], zle, lz4

其中默认的压缩算法为lzjb, 这个是zfs的作者jeff bonwick提供的, gzip默认的压缩级别为6, 或者指定压缩级别.

这里主要测试一下压缩时间和压缩比.

注意, 压缩选项默认是关闭的, 压缩选项针对dataset来设置, 同一个pool中不同的dataset可以设置不同的压缩算法, 也可以开关混用. 对于未使用压缩的dataset, 如果已经存在数据的话, 开启压缩后, 之后的数据会压缩, 但是之前存储的数据不会变动. 

首先测试的是lzjb.

测试gzip

测试gzip-9

测试lz4

不压缩的情况测试 : 

从测试结果来看, gzip6的压缩比最高, 同时时间也比较折中, 推荐使用.

另外作者的算法lzjb也是被大多数人推荐使用的.

建议所有的dataset都开启压缩, 从测试数据来看, 显然cpu不是问题, io是大问题. 因为未开启压缩的情况下, 耗时是最长的.

[参考]

1. https://pthree.org/2012/12/18/zfs-administration-part-xi-compression-and-deduplication/

继续阅读