bzip と gzip の長所と短所は何ですか?

bzip と gzip の長所と短所は何ですか?

私は gzip を何年も知っていますが、最近職場で bzip が使用されているのを見ました。これらは基本的に同等ですか、それともどちらか一方に他方よりも大きな長所と短所がありますか?

答え1

Gzip と bzip2、および xz と lzop は機能的に同等です。(かつては bzip がありましたが、完全にこの世から消えてしまったようです。) その他の一般的な圧縮形式は zip、rar、7z です。これら 3 つは圧縮とアーカイブ (複数のファイルを 1 つにまとめる) の両方を行います。速度、可用性、および一般的な圧縮率に関する一般的な評価を以下に示します (これらの評価は多少主観的なので、絶対的なものではないことに注意してください)。

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

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

非 Unix ネイティブ形式 (zip、rar、7z) では、すべての Unix メタデータ (所有権、権限) が保持されません。必要な場合は、圧縮された tar を使用してください。

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

答え2

私の知る限り、gzip は全体的に高速ですが、bzip は全体的に優れた (小さい) 圧縮を実現します。

答え3

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

選択は、汎用性 (.gz) と、少し圧縮された (.bz2) のどちらかになります。どちらを重視するかは、あなただけが決めることができます。

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

答え4

パーhttp://tukaani.org/lzma/benchmarks.htmlgzip は bzip2 よりも 2 倍速く圧縮し、10 倍速く解凍します。

たとえば、S3 キャッシュや Travis などで使用し、サイズを小さくするだけでなく圧縮/解凍の速度も必要な場合は、gzip が適切なトレードオフになる可能性があります。

関連情報