跳至內容

LZ4

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書
LZ4
原作者Yann Collet
開發者Yann Collet
首次發佈2011年4月24日 (2011-04-24)
目前版本
  • 1.9.4 (2022年8月16日;穩定版本)[1]
編輯維基數據連結
原始碼庫 編輯維基數據連結
程式語言C
作業系統跨平台
平台可移植
類型數據壓縮
許可協定Simplified BSD License
網站lz4.org 編輯維基數據連結

LZ4是一種無失真數據壓縮演算法,着重於壓縮和解壓縮速度,它屬於面向位元組的LZ77壓縮方案家族。

特徵[編輯]

LZ4 演算法目標是提供速度和壓縮比的良好權衡,壓縮率比 LZO 差,也比 Deflate 類型的演算法差,但是 LZ4 壓縮速度與 LZO 相似,比 DEFLATE 快數倍,而解壓縮速度則明顯快於 LZO。[3]

設計[編輯]

壓縮可以在流或者塊中進行。在尋找最佳匹配時投入更多努力可達到更高的壓縮率,這樣的結果是更小的輸出和更快的解壓縮速度。

實現[編輯]

Yann Collet使用C語言製成的參考實現發佈在BSD許可證之下。此演算法已有多種語言的移植繫結,包括JavaC#Python等。[4]像是Hadoop等資料庫使用此演算法進行快速壓縮。LZ4也在Linux內核 3.11中被原生實現。[5]ZFS檔案系統的FreeBSDIllumos、ZFS on Linux,以及ZFS-OSX實現都支援LZ4演算法進行即時壓縮。[6][7][8][9]Linux從3.19-rc1開始在SquashFS中支援LZ4。[10]Yann Collet也在較新版的Zstd壓縮軟件中實現了LZ4。

參考資料[編輯]

  1. ^ Release v1.9.4. 
  2. ^ Releases - lz4/lz4. [2022-08-15]. (原始內容存檔於2021-01-29) –透過GitHub. 
  3. ^ Michael Larabel. Support For Compressing The Linux Kernel With LZ4. Phoronix. 2013-01-28 [2015-08-28]. (原始內容存檔於2020-11-27). 
  4. ^ GitHub上的Extremely Fast Compression algorithm http://www.lz4.org
  5. ^ Jonathan Corbet. Kernel development. LWN.net. 2013-07-19 [2015-08-28]. (原始內容存檔於2017-12-15). 
  6. ^ FreeBSD 9.2-RELEASE Release Notes. FreeBSD. 2013-11-13 [2015-08-28]. (原始內容存檔於2020-11-12). 
  7. ^ LZ4 Compression. illumos. [2015-08-28]. (原始內容存檔於2018-10-09). 
  8. ^ GitHub上的Illumos #3035 LZ4 compression support in ZFS and GRUB
  9. ^ Features: lz4 compression. OpenZFS. [2015-08-28]. (原始內容存檔於2020-04-25). 
  10. ^ Phillip Lougher. Squashfs: Add LZ4 compression configuration option. 2014-11-27 [2015-08-28]. 

外部連結[編輯]