최근 수정 시각 : 2024-11-08 13:37:48

LZ4


http://www.lz4.org
https://github.com/lz4/lz4

1. 개요

LZ4는 Yann Collet [1]이 개발한 멀티코어를 지원하는 비손실 압축 알고리즘이다.

2. 특징

압축률은 기존 압축 알고리즘인 Deflate 등에 비해 낮지만 속도가 최대 10배 이상으로 매우 빠르다.
이 때문에 압축이 어느 정도 필요하지만 값을 빠르게 전송하거나 저장해야 하는 환경에서 사용되는데 GB/s 단위의 압축 해제 대역폭이 가장 큰 특징이다.

LZ4의 기본 옵션은 자주 사용되는 Deflate와 비교하면 압축비가 낮지만(2.084 (LZ4), 3.099(zlib level 6))[2] 아카이브와 같이 압축된 많은 데이터를 읽기만 하는 시나리오에서는 압축 속도를 희생하되 압축비를 Deflate에 근접한 수준(2.72:2.73)으로 압축하는 것이 가능함에도 압축 해제는 성능 저하가 없는 수 GB/s 대의 압축 해제 성능을 보여준다.

C로 구현이 되어있고 BSD-2 라이선스를 따른다. C 외에도 다양한 프로그래밍 언어로 포팅되거나 바인딩되어있다.
이름에서도 유추할 수 있듯이 LZ 알고리즘을 바탕으로 한다.
[1] 이후 zstd를 개발하기도 했다[2] CERN Comparision Compression Algorithms

분류