web-dev-qa-db-ja.com

bzipとgzipの長所と短所は?

私は長年gzipを知っていましたが、最近仕事でbzipが使われているのを見ました。それらは基本的に同等なのか、それともそれらのうちの一方との間に重要な長所と短所があるか。

119
ripper234

Gzipとbzip2は機能的に同等です。 (かつてbzipがありましたが、それは世界の表面から完全に消え去ったようです。)他の一般的な圧縮フォーマットはZip、rarおよび7zです。これら3つは、圧縮とアーカイブ(複数のファイルを1つにまとめる)の両方を行います。ここにスピード、有用性および典型的な圧縮率の観点からのいくつかの典型的な評価があります(これらの評価は多少主観的であることに注意してください、それらを福音として受け取らないでください):

decompression speed (fast > slow): gzip, Zip > 7z > rar > bzip2
compression speed (fast > slow): gzip, Zip > bzip2 > 7z > rar
compression ratio (better > worse): 7z > rar, bzip2 > gzip > Zip
availability (unix): gzip > bzip2 > Zip > 7z > rar
availability (windows): Zip > rar > 7z > gzip, bzip2

ご覧のとおり、明らかな勝者はありません。すでにインストールされている可能性のあるプログラムに頼るのであれば、WindowsのZip(または可能であれば自己解凍型アーカイブ、Windowsには含まれていないため)を使用し、UNIXのgzipを使用してください。最大限の圧縮が必要な場合は、7zを使用してください。

Rarには、私の知る限りでは、RARアーカイブを作成したり、すべてのRARアーカイブを解凍できるフリーソフトウェアがないという欠点もあります。他のフォーマットには無料の実装があり、(深刻な)特許請求はありません。

144
Gilles

私が言える限りでは、gzipは全体的に高速ですが、bzipは全体的により良い(小さい)圧縮を生成します。

23
Lie Ryan

アルゴリズムは、時間、メモリ、スペースのトレードオフが異なります。これらのアルゴリズムはかなり前に書かれたもので、スマートフォンは当時のデスクトップの何倍ものCPUを搭載しています。

あなたの選択は普遍性(.gz)ともう少し圧縮(.bz2)の間です。あなただけがあなたがもっと気にかけていると言うことができます。

.gzの利点の1つは、ストリームを圧縮できることです。これは、後ろを見てはいけないシーケンスです。これはそれをhttpストリームの公式コンプレッサーにします。そのため、私は一度gzipを使う必要がありましたが、考える必要はないでしょう。

5
Rich Homolka

これは圧縮アルゴリズムをテストするサイトのリストです。bzipとgzipを見つけるためには、掘り下げる必要がありますが、ほとんどのサイトではアルゴリズムの特性がリストされます。この方法であなたはあなたにとって重要なもの、サイズ(圧縮率)、時間、メモリ、CPUを比較することができます。
http://www.maximumcompression.com/benchmarks/benchmarks.php

3

http://tukaani.org/lzma/benchmarks.html によると、gzipはbzip2の2倍の速度で圧縮し、10倍の速度で解凍します。

S3キャッシング、トラビスなどでの使用、小さいサイズだけでなく圧縮/解凍のスピードが欲しい場合などには、gzipは良いトレードオフになるかもしれません。

1
Hugh Perkins

私の経験ではbzipは一貫してgzipよりも優れた圧縮率を提供しています。 7Zipをマネージャおよびbzipアルゴリズムとして使用すると、7Zipはマルチコアプロセッサを利用できます。

1
Sathyajith Bhat