lz4 vs lz4_hc vs blosc vs snappy vs fastlz之间的比较

时间:2016-06-03 12:28:03

标签: snappy lossless-compression lz4

我有一个500 mb的大文件,可在一分钟内压缩,压缩率最佳。我发现这些算法适合我的使用。

  1. lz4
  2. lz4_hc
  3. snappy
  4. quicklz
  5. blosc
  6. 有人可以比较这些算法之间的速度和压缩比吗?

4 个答案:

答案 0 :(得分:24)

Yann Collet的lz4,hands down

enter image description here

答案 1 :(得分:4)

答案 2 :(得分:2)

像大多数问题一样,答案通常最终是:取决于:)

其他答案为您提供了很好的指示,但是要考虑的另一件事是压缩和解压缩阶段的RAM使用情况以及MB / s的解压缩速度。

解压缩速度通常与压缩率成反比,因此您可能会认为您选择了理想的算法来节省一些带宽/磁盘存储,但是无论下游消耗什么数据,现在都必须花费更多的时间,CPU周期和/或RAM解压缩。 RAM的使用似乎无关紧要,但也许下游系统是嵌入式/低压系统?也许RAM足够,但是CPU有限?所有这些事情都需要考虑在内。

以下是在各种算法上进行的一组基准测试的示例,其中考虑了许多这些注意事项:

https://catchchallenger.first-world.info/wiki/Quick_Benchmark:_Gzip_vs_Bzip2_vs_LZMA_vs_XZ_vs_LZ4_vs_LZO

答案 3 :(得分:0)

如果仅是为了实现高压缩密度,则需要查看LZMA和大窗口Brotli。从广泛使用的开源算法中,这两种算法可提供最佳的压缩密度。 Brotli的压缩速度较慢,但​​解压缩的速度约为5倍。