2011-02-23 23 views

답변

9

lzo 및 lzf는 2 개의 잘 알려진 매우 간단한 압축 알고리즘입니다. lzf는 압축 중에 메모리 사용량이 적을 때 사용합니다. lzo는 최대 디코딩 속도를 제공합니다. 둘 다 빠르며, 둘 다 메모리 요구량이 거의없고 둘 다 비슷한 압축률을 갖습니다 (이는 매우 열악 함을 의미).

당신은 예를 들어 여기에 다른 압축기로의 직접 비교를 볼 수 있습니다 : http://phantasie.tonempire.net/t96-compression-benchmark#149

+1

:이 부분은 포함 무엇 GZIP/폐의 50 %를 않지만, (렘펠 - 지브의 문자열 압축)은 압축의 영향을 줄이면서 두 번째 부분 (허프만 인코딩)이 느려지고 일반적으로 대부분의 압축을 생성합니다. 따라서 gzip (및 bzip2)보다 낮은 것은 사실이지만 "매우 느립니다"는 주관적/상대적 진술입니다. – StaxMan

2

모두 (빠른 작업을 할 수 있습니다 기본 렘펠 - 지브 압축기이다 허프만을 사용하여 인코딩에는 두 번째 단계는 (이 없기 때문에 gzip/zip로) 또는 통계적 엔코더)를 적당히 압축합니다.

자바에서 코덱 비교를위한 하나의 벤치 마크는 jvm-compressor-benchmark입니다. LZO는 아직 포함되어 있지 않지만 순수한 Java LZF는 뛰어난 성능 (특히 압축 속도)을 가지고 있으며, 드라이버가 있다면 LZO도 잘 수행 할 수 있다고 가정합니다.

다른 LZ 기반 알고리즘은 Google의 Snappy이며 원시 코덱은 압축 해제시 가장 빠른 코덱입니다 (압축은 순수한 자바 LZF 압축만큼 빠릅니다).

9

가볍고 빠른 알고리즘이 있습니까?

LZ4과 Google의 snappy도 있습니다. 프로젝트 홈페이지에 LZ4 저자가 발표 한 벤치 마크와 HADOOP-7657 호의 Hadoop 개발자에 따르면 LZ4가 가장 빠른 것 같습니다.

+1

이러한 대안을 비교하는 특정 벤치 마크 슈트는 https://github.com/ning/jvm-compressor-benchmark에서 찾을 수 있습니다. 실제로 LZ4가 현재 가장 빠릅니다. – StaxMan

+0

좋은 벤치 마크 결과, 감사합니다! – ogrisel