プロジェクト

全般

プロフィール

ファイルの圧縮・伸張

高橋 徹 さんがほぼ8年前に追加

Windows上ではファイルの圧縮伸張ツールに7zipを使っています。
UNIX(Linux)上では、今まではgzipまたはbzip2を使っていました。bzip2の方が圧縮率が高いです。
ところが、さいきんxzなるツールが広まっています。tarのオプションでもxz圧縮をするJオプションが使えるようになってきました。
このxzは、7zipと同じ圧縮アルゴリズムLZMAを使います。

試しに、今日ビルドしたruby-2.0.0p247のRPMを圧縮比べしてみました。

ファイル 元サイズ xz圧縮サイズ bzip2圧縮サイズ
ruby-2.0.0p247-1.el6.x86_64.rpm 20,574,440 18,407,472(6.3秒) 18,515,797(3.7秒)

返答 (2)

圧縮に対して差がないのでは? - 高橋 徹 さんが約7年前に追加

上述の結果を見る限り、xzとbzip2とほとんど差がないように見えますが、一方でxzはすごいという声も聞きます。
どうなのでしょうか?

大きなファイルの圧縮でxzとbzip2を比較しました - 高橋 徹 さんがほぼ7年前に追加

CentOS 6上でqcow2形式のKVMイメージファイルを圧縮したときのサイズと時間を比較しました。

ファイル 元サイズ xz圧縮サイズ(処理時間) bzip2圧縮サイズ(処理時間) 備考
centos6minimal.img 1,298,268,160 222,271,536(362秒) 297,550,550(104秒)
centos65minimal.img 8,600,420,352 183,091,912(869秒) 246,758,146(194秒) クラスタサイズ2MB, perallocation=metadataで作成
centos6_alfa.img 18,090,819,584 3,644,322,412(4947秒) 4,381,449,849(1612秒)

ということで、XZが20%ほど圧縮効率が高いが圧縮にかかる時間は3倍という傾向を示しています。

    (1-2/2)