DigiLoog

PC関係の事なら何でもいけるそんな処

Archive for 2014年06月08日

Linuxの各圧縮コマンド実行速度と圧縮率を測定してみた [gzip/bzip2/xz/zip/7zip/lzh]

2014年06月08日(日) - 18:21 | カテゴリ: Linux

先日、自鯖のログ圧縮を行おうとキーボードを叩いていたのだが、
その時に『普通ならgzipだろうけどxzとか他はどうなんだろう…?』
と思ったので、実際にファイルを圧縮しつつ実行速度と圧縮率を測定してみた。

Linux(CentOS)のデフォルトlogrotateでcompressオプションを指定した場合はgzip圧縮になる。
オプションとかコマンドを再指定する事で、他の圧縮方法に切り替える事も可能だけど、
普通はそんな面倒な事やらないし、
『ログの圧縮と言ったらgzipだべ』という人が大半だと思われる。

そんな中での今回の検証だが、果たしてどの圧縮方法が鯖に優しいのだろうか(`・ω・´)

………

● 計測方法

  1. 検証は仮想環境上に"CentOS x86_64"を構築し実施。
  2. テキスト(ログ)504MBバイナリ(CentOSのLiveCD)649MBに対して
    各圧縮コマンド毎に3回ずつ圧縮処理を行い、
    その中の最速処理時間の値を圧縮方法に対応する処理時間とする
  3. 圧縮率指定の出来るコマンドでは、[速度重視 / 指定無し / 最高圧縮率]の3種類の測定を行う
    ただし、アーカイブ化オプション(=圧縮しない)の場合は省略する
  4. 処理時間の測定にはtimeコマンドを使用し、
    ユーザタイムでの処理時間をファイルの圧縮にかかった時間とする
  5. 圧縮率の計算は"[圧縮後の容量] / [圧縮前の容量]"とする
  6. 各コマンドのバージョンは以下の物を使用
コマンド バージョン
gzip 1.3.12
bzip2 1.0.5
xz 4.999.9beta
zip 3.0
7zip(7za) 9.20.1
lzh(lha) 1.14i

という事で、実際にコマンドを叩きまくって計測をしてみた。



  • Advertise

  • 応援中

    ま~まれぇど新作第12弾『スタディ§ステディ』
    この恋は世界を変える CIRCUS 20th Project「D.C.4 ~ダ・カーポ4~」予約受付中!