WIPIVERSE

LZFSE

정의
LZFSE(“Lempel‑Ziv Finite State Entropy”)는 Apple이 개발한 무손실 데이터 압축 알고리즘이다. LZ77 기반의 문자열 매칭 기법과 Finite State Entropy(FSE)라는 산술 코딩 방식을 결합하여, 압축률과 압축·해제 속도 간의 균형을 목표로 설계되었다.

역사 및 배경

  • 2016년 Apple이 macOS 10.12(“Sierra”)와 iOS 10에 포함시키면서 공개하였다.
  • 이후 Apple은 해당 알고리즘을 오픈소스로 제공했으며, 공식 저장소는 Apple Open Source(apple.com)와 GitHub 등에서 확인할 수 있다.

기술적 특징

항목 내용
압축 원리 LZ77 기반의 문자열 매칭을 사용하여 중복 데이터를 탐지하고, 매칭 정보를 FSE를 이용해 고효율 엔트로피 코딩한다.
윈도우 크기 일반적으로 64 KB의 슬라이딩 윈도우를 사용한다.
압축률 ZLIB(Deflate) 대비 동일하거나 약간 높은 압축률을 제공한다는 평가가 있다.
속도 LZ4와 비교했을 때 압축·해제 속도가 다소 느리지만, 높은 압축 효율성을 가진다.
플랫폼 macOS, iOS 및 기타 Apple 제품에 내장되어 있으며, 명령줄 도구(lzfse)를 통해 직접 사용할 수 있다.
파일 포맷 압축된 데이터는 .lzfse 확장자를 사용한다. 헤더에는 압축 옵션 및 원본 데이터 크기 등이 포함된다.

주요 활용 사례

  • macOS와 iOS의 시스템 업데이트 파일 압축.
  • Xcode 등 개발 도구에서 배포 패키지 및 리소스 압축.
  • 타사 응용 프로그램에서 Apple 공개 API를 활용한 파일 압축·해제.

관련 기술

  • LZMA, ZSTD, LZ4 등 다른 무손실 압축 알고리즘과 비교되는 경우가 많다.
  • FSE는 빠른 엔트로피 코딩을 제공하는 기술로, Facebook이 개발한 Zstandard에서도 사용된다.

참고문헌

  1. Apple Developer Documentation – “LZFSE Compression”. (apple.com)
  2. Apple Open Source – “lzfse” source code repository. (opensource.apple.com)
  3. “Finite State Entropy” – FSE algorithm specification (public technical literature).

본 내용은 확인된 공개 자료를 기반으로 작성되었으며, 최신 기술 동향에 따라 추가적인 세부 사항이 변경될 수 있다.

둘러보기

더 찾아볼 만한 주제

    전체 문서 보기