什么是lzo和lzf,以及差异?

时间:2011-02-23 09:35:59

标签: algorithm compression lzo lzf

您好我听说过lzo和lzf,看起来它们都是压缩算法。它们是一样的吗?有没有像他们这样的其他算法(光和快)?

4 个答案:

答案 0 :(得分:10)

lzo和lzf是众所周知的两种非常简单的压缩算法。 lzf用于压缩期间的低内存使用量。 lzo寻求最大的解码速度。 两者都很快,都有很少的内存要求,两者都具有可比的压缩率(这意味着非常差)。

您可以在这里查看它们与其他压缩器的直接比较,例如: http://phantasie.tonempire.net/t96-compression-benchmark#149

答案 1 :(得分:9)

  

还有其他算法吗(轻快的)?

还有LZ4和Google的snappy。根据LZ4作者在项目主页和Hadoop开发人员发布的问题HADOOP-7657上发布的基准,LZ4似乎是最快的。

答案 2 :(得分:3)

两者都是基本的Lempel-Ziv压缩器,它允许快速操作(因为没有使用huffman(如gzip / zip do)或统计编码器进行中等压缩的第二阶段编码。

比较java上编解码器的一个基准是jvm-compressor-benchmark。 LZO尚未包含在内,但纯Java LZF具有出色的性能(尤其是压缩速度),我认为LZO可能也很好,如果有驱动程序的话。

另一种基于LZ的算法是Google的Snappy,其原生编解码器是解压缩中速度最快的编解码器(压缩速度与纯java LZF压缩速度一样快)。

答案 3 :(得分:3)

可分离的LZ4和ZSTD用于hadoop,最近出生但很有希望 - > https://github.com/carlomedas/4mc