lz4,pigz,gzip 3者比較

來源:互聯網
上載者:User

標籤:

一、壓縮
(1.1)使用gzip進行打包:
# time tar -zcf tar1.tar binlog*
real 0m48.497s
user 0m38.371s
sys 0m2.571s

(1.2)使用pigz壓縮,同時設定最高壓縮速度(-1)
# time tar -cv binlog* | pigz -1 -p 24 -k >pigz1.tar.gz
real 0m10.715s
user 0m17.674s
sys 0m1.699s

 

(1.3)  使用pigz壓縮,預設壓縮比

# time tar -cv binlog* | pigz -p 24 -k >pigz2.tar.gz
real 0m22.351s
user 0m39.743s
sys 0m1.341s

(1.4)使用pigz壓縮,同時設定最高壓縮比(-9)
# time tar -cv binlog* | pigz -9 -p 24 -k >pigz3.tar.gz
real 0m46.975s
user 1m26.118s
sys 0m1.473s


(1.5) 使用lz4壓縮,同時設定最高壓縮速度(-1)
# time tar -cv binlog* | lz4 -1 > lz41.tar.gz
real 0m4.969s
user 0m2.953s
sys 0m1.199s


(1.6) 使用lz4壓縮,使用預設設定
# time tar -cv binlog* | lz4  > lz42.tar.gz
real 0m4.447s
user 0m2.958s
sys 0m1.185s


(1.7) 使用lz4壓縮,同時設定最高壓縮比(-9)
# time tar -cv binlog* | lz4 -9 > lz43.tar.gz 
real 0m56.144s
user 0m54.300s
sys 0m1.301s


以上方式的打包壓縮後檔案大小
127M tar1.tar              (1.1)
152M pigz1.tar.gz          (1.2)
127M pigz2.tar.gz          (1.3)
123M pigz3.tar.gz          (1.4)
216M lz41.tar.gz           (1.5)
216M lz42.tar.gz           (1.6)
163M lz43.tar.gz           (1.7)


二、解壓縮:
(2.1)直接使用tar -xvf解壓縮tar檔案
# time tar -xvf tar1.tar
real 0m42.329s
user 0m9.134s
sys 0m2.704s


(2.2) 直接使用tar -xvf解壓縮pigz打包的檔案(pigz壓縮的檔案可以使用tar直接解壓縮)
# time tar -xvf pigz1.tar.gz
real 0m42.048s
user 0m9.818s
sys 0m2.927s


(2.3)使用pigz -d對pigz壓縮檔進行解壓
# file=pigz1.tar && pigz -k -d $file.gz && time tar -xf $file
real 0m56.706s
user 0m0.074s
sys 0m2.588s


(2.4)不可使用tar -xvf解壓lz4壓縮的檔案
# time tar -xvf lz41.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now


(2.5)使用lz4 -d對lz4壓縮檔進行解壓
# file=lz41.tar && lz4 -d $file.gz $file && time tar -xf $file
Successfully decoded 1203701760 bytes                                          
real 0m59.851s
user 0m0.064s
sys 0m2.699s


三、結論:
從上列資料可以總結出以下結論:
1.使用pigz指命明顯比gzip快(網上說法是5倍),但同時CPU消耗也比較大(網上說法是8倍左右),兩者壓縮後檔案大小無異。
2.使用lz4能獲得很好的壓縮速度,但壓縮的檔案比用gzip和pigz稍大。
3.pigz壓縮的檔案可以直接用tar -x指令解壓縮,而使用lz4壓縮的檔案不可。

從實現資料來看,如果目前系統想提高壓縮解壓縮速率,可以考慮切換到pigz壓縮方式,不過會增大cpu消耗。在對壓縮效率要求較高、但對短時間內CPU消耗較高不受影響的情境,使用pigz非常合適。

 

lz4,pigz,gzip 3者比較

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.