天天看點

常用的壓縮算法以及差別

常用的壓縮算法主要有:deflate、gzip、bzip2、lzo、snappy等。差别如下所示:

  1. deflate、gzip都是基于LZ77算法與哈夫曼編碼的無損資料壓縮算法,gzip隻是在deflate格式上增加了檔案頭和檔案尾;
  2. bzip2是Julian 

    Seward開發并按照自由軟體/開源軟體協定釋出的資料壓縮算法,Apache的Commons-compress庫中進行了實作;

  3. LZO緻力于解壓速度,并且該算法也是無損算法;
  4. LZ4是一種無損資料壓縮算法,着重于壓縮和解壓縮速度;
  5. Snappy是Google基于LZ77的思路用C++語言編寫的快速資料壓縮與解壓程式庫,2011年開源。它的目标并非最大程度地壓縮,而是針對最快速度和合理的壓縮率。