Что такое lzo и lzf, и чем отличаются? - PullRequest
8 голосов
/ 23 февраля 2011

Привет, я слышал о lzo и lzf, и кажется, что они все алгоритмы сжатия.Это одно и то же?Есть ли другие алгоритмы, подобные им (легкие и быстрые)?

Ответы [ 4 ]

10 голосов
/ 08 марта 2011

lzo и lzf - два хорошо известных очень простых алгоритма сжатия.lzf использует низкое использование памяти во время сжатия.Изо идет для максимальной скорости декодирования.Оба быстры, оба имеют небольшие требования к памяти, оба имеют сравнимые степени сжатия (что означает очень низкое).

Вы можете посмотреть прямое сравнение их с другими компрессорами, например: http://phantasie.tonempire.net/t96-compression-benchmark#149

9 голосов
/ 04 июля 2012

Существуют ли другие подобные алгоритмы (легкие и быстрые)?

Также есть LZ4 и Google snappy .Согласно тестам, опубликованным автором LZ4 на домашней странице проекта и разработчиками Hadoop в выпуске HADOOP-7657 , LZ4 кажется самым быстрым из них.

3 голосов
/ 17 сентября 2014

LZ4 и ZSTD для Hadoop, недавно родившиеся, но многообещающие -> https://github.com/carlomedas/4mc

3 голосов
/ 09 июня 2011

Оба являются базовыми компрессорами Lempel-Ziv, что обеспечивает быструю работу (поскольку отсутствует вторая фаза кодирования с использованием huffman (как gzip / zip do) или статистического кодера) с умеренным сжатием.

Один тест дляСравнение кодеков на Java - это jvm-compressor-benchmark .LZO еще не включен, но чистый Java LZF имеет отличную производительность (особенно скорость сжатия), и я предполагаю, что LZO тоже может хорошо работать, если бы был драйвер для него.

Еще один алгоритм на основе LZ - SnappyGoogle, и его родной кодек является самым быстрым кодеком при распаковке (и сжатие происходит так же быстро, как и сжатие LZF на чистой Java).

...