gzip和bzip压缩比以及压缩时间对比

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gzip和bzip压缩比以及压缩时间对比相关的知识,希望对你有一定的参考价值。

对一个1G的日志文件进行压缩,整个压缩期间gzip和bzip2都能将1个核利用到100%。

首先将该日志文件读入页面缓存: 可以cat该文件也可以用vmtouch -t来实现

先检查该文件已经在page cache中

[[email protected] ~]# vmtouch /serverInfo_2019-02-11_7.log
           Files: 1
     Directories: 0
  Resident Pages: 262145/262145  1G/1G  100%
         Elapsed: 0.044465 seconds

默认压缩比 -6

[[email protected] ~]# time gzip -c -6 /serverInfo_2019-02-11_7.log > /tmp/1.gz

real    0m32.167s
user    0m31.267s
sys 0m0.691s
[[email protected] ~]# time bzip2 -c -6 /serverInfo_2019-02-11_7.log > /tmp/1.bz

real    2m11.389s
user    2m10.667s
sys 0m0.697s

检查压缩比

[[email protected] ~]$ ll -h /tmp/1*
-rw-rw-r-- 1 root root 190M Mar 11 11:27 /tmp/1.bz
-rw-rw-r-- 1 root root 244M Mar 11 11:29 /tmp/1.gz

最慢压缩(压缩比-9)

[[email protected] ~]# time gzip -c -9 /serverInfo_2019-02-11_7.log > /tmp/1.gz

real    1m7.961s
user    1m7.119s
sys 0m0.739s
[[email protected] ~]# time bzip2 -c -9 /serverInfo_2019-02-11_7.log > /tmp/1.bz

real    2m23.701s
user    2m23.016s
sys 0m0.675s

检查压缩比

[[email protected] ~]$ ll -h /tmp/1*
-rw-rw-r-- 1 root root 182M Mar 11 11:27 /tmp/1.bz
-rw-rw-r-- 1 root root 240M Mar 11 11:29 /tmp/1.gz

最快压缩(压缩比-1)

[[email protected] ~]# time gzip -c -1 /serverInfo_2019-02-11_7.log > /tmp/1.gz

real    0m16.090s
user    0m15.403s
sys 0m0.672s
[[email protected] ~]# time bzip2 -c -1 /serverInfo_2019-02-11_7.log > /tmp/1.bz

real    1m48.986s
user    1m48.012s
sys 0m0.878s

检查压缩比

[[email protected] ~]$ ll -h /tmp/1*
-rw-rw-r-- 1 root root 234M Mar 11 11:27 /tmp/1.bz
-rw-rw-r-- 1 root root 297M Mar 11 11:29 /tmp/1.gz

结论

  1. 一般情况下,默认压缩比和最佳压缩比(-6和-9):没必要为了增加那一点点的压缩比(1G的原文本文件最终只差了几兆)而增加非常明显(甚至翻倍)的压缩/解压缩时间
  2. 默认压缩比和最小压缩比(耗时最短)之间:如果能容忍低一点的压缩比(1G原文本文件最终差4 5十兆)同时注重耗时的话(压缩/解压缩耗时能大幅下降甚至下降一半),可以选择最地的压缩比来获得最高的处理效率
  3. bzip的压缩比在同等级别下都要略高于gzip,但是耗时却明显的高于gzip(基本2倍上下)
  4. 不同的压缩比下,gzip的耗时敏感度要高于bzip,即不同压缩比下,gzip耗时的增减幅度要大于bzip(但都远小于bzip)

以上是关于gzip和bzip压缩比以及压缩时间对比的主要内容,如果未能解决你的问题,请参考以下文章

Linux打包和压缩工具的使用

压缩命令 gzip bzip2 xz zip

xz压缩

(linux服务器)apache开启gzip的配置以及效果对比

文件格式对比ORC-Parquet,存储格式对比Gzip-Bzip2-Snappy

1. gzip, bzip2 能否直接压缩目录呢?