2011-02-23 15 views

Respuesta

9

lzo y lzf son 2 algoritmos de compresión muy conocidos muy simples. lzf es para uso de poca memoria durante la compresión. lzo va para la máxima velocidad de decodificación. Ambos son rápidos, ambos tienen pocos requisitos de memoria, ambos tienen tasas de compresión comparables (lo que significa muy pobre).

Usted puede mirar en una comparación directa de ellos con otros compresores aquí por ejemplo: http://phantasie.tonempire.net/t96-compression-benchmark#149

+1

estoy de acuerdo con "muy pobres", como calificador: lo hace el 50% de lo que gzip/desinflado, pero la parte incluida (Lempel-Ziv subcadena compresión) generalmente produce la mayor parte de la compresión, ya que la segunda parte (codificación Huffman) es más lenta y tiene menos impacto en la compresión. Por lo tanto, menor que gzip (y bzip2) es cierto, pero "muy lento" es una afirmación subjetiva/relativa. – StaxMan

2

Ambos son compresores básicos Lempel-Ziv, lo que permite un funcionamiento rápido (ya que no hay segunda fase de codificación utilizando Huffman (como gzip/zip do) o codificador estadístico) con compresión moderada.

Un punto de referencia para comparar los códecs en java es jvm-compressor-benchmark. LZO aún no está incluido, pero Java LZF puro tiene un rendimiento excelente (especialmente la velocidad de compresión), y supongo que a LZO también le iría bien si hubiera un controlador para ello.

Otro algoritmo basado en LZ es Snappy by Google, y su códec nativo es el códec más rápido en la descompresión (y la compresión es tan rápida como la compresión LZF pura-java).

9

¿Hay algún otro algoritmo como estos (ligero y rápido)?

También hay LZ4 y Google snappy. De acuerdo con los puntos de referencia publicados por el autor de LZ4 en la página de inicio del proyecto y los desarrolladores de Hadoop en el número HADOOP-7657, LZ4 parece ser el más rápido de todos.

+1

Suite de referencia específica que compara estas alternativas se puede encontrar en https://github.com/ning/jvm-compressor-benchmark. LZ4 es de hecho el más rápido actualmente. – StaxMan

+0

¡Un buen conjunto de puntos de referencia, gracias! – ogrisel

Cuestiones relacionadas