700MBのデータが30〜50MB程度に圧縮されているなど、高度に圧縮されたファイルを見てきました。
しかし、このような圧縮ファイルをどのように取得しますか?WinRARや7Zipなどのソフトウェアを使用してみましたが、このような高い圧縮率を達成したことはありません。
ファイルを非常にうまく圧縮できる技術/ソフトウェアは何ですか?
(PS私はWindows XPを使用しています)
700MBのデータが30〜50MB程度に圧縮されているなど、高度に圧縮されたファイルを見てきました。
しかし、このような圧縮ファイルをどのように取得しますか?WinRARや7Zipなどのソフトウェアを使用してみましたが、このような高い圧縮率を達成したことはありません。
ファイルを非常にうまく圧縮できる技術/ソフトウェアは何ですか?
(PS私はWindows XPを使用しています)
回答:
データの圧縮にかかる時間が問題にならない場合は、いくつかの異なるツールを一緒に使用して圧縮サイズを最適化できます。
7zip、winrar(zip用)、bjwflateなどのさまざまなツールを使用して、データを数回圧縮します。
(これはzipファイルを何度も圧縮することを意味するのではなく、異なるツールを使用して多数の代替zipファイルを作成することに注意してください)
次に、各アーカイブでdefloptを実行して、各アーカイブをもう少し減らします。
最後に、アーカイブのコレクションでzipmixを実行します。異なるzipツールは異なるファイルに対して優れているため、zipmixは各アーカイブから各ファイルの最適な圧縮バージョンを選択し、zipツールが個別に生成できるものよりも小さい出力を生成します。
ただし、これはファイルに対して何らかの魔法をかけることを保証するものではないことに注意してください。JPEGやMP3など、特定の種類のデータは単純にあまり圧縮されません。これらのファイルはすでに内部的に圧縮されています。
これは、圧縮されるデータに完全に依存します。
テキストは非常によく圧縮されますが、バイナリ形式はあまり圧縮されず、圧縮データ(mp3、jpg、mpeg)はまったく圧縮されません。
ウィキペディアの優れた圧縮比較表を次に示します。
以前の答えは桁違いに間違っています!
私が個人的に経験した中で最高の圧縮アルゴリズムはpaq8o10tです(zpaqページとPDFを参照)。
ヒント:files_or_foldersを圧縮するコマンドは次のようになります。
paq8o10t -5 archive files_or_folders
出典:増分ジャーナリングバックアップユーティリティおよびアーカイバ
GitHubでソースコードのミラーを見つけることができます。
わずかに優れた圧縮アルゴリズムであり、Hutter Prizeの勝者はdecomp8です(賞のページのリンクを参照)。ただし、実際に使用できる圧縮プログラムはありません。
以下のための本当に大きなファイルlrzip単にある圧縮率を達成することができコミカルに。
README.benchmarksの例:
1つのバージョンを別の6つのカーネルツリー、tarball、linux-2.6.31からlinux-2.6.36に分けてみましょう。これらは多くの冗長な情報を表示しますが、数百メガバイト離れているため、lrzipは圧縮に非常に適しています。簡単にするために、現時点では7zのみを比較します。これは現時点で最も優れた汎用コンプレッサーであるためです。
これらは、lrzip v5.0.1を使用して4GB RAMを搭載した2.53GhzデュアルコアIntel Core2で実行されたベンチマークです。32ビットのユーザー空間で実行されていたため、2GBのアドレス指定のみが可能であったことに注意してください。ただし、ベンチマークは-Uオプションで実行され、ファイル全体を1つの大きな圧縮ウィンドウとして扱うことができました。
6つの連続したカーネルツリーのTarball。
Compression Size Percentage Compress Decompress
None 2373713920 100 [n/a] [n/a]
7z 344088002 14.5 17m26s 1m22s
lrzip 104874109 4.4 11m37s 56s
lrzip -l 223130711 9.4 05m21s 1m01s
lrzip -U 73356070 3.1 08m53s 43s
lrzip -Ul 158851141 6.7 04m31s 35s
lrzip -Uz 62614573 2.6 24m42s 25m30s
Squeezechart.comには、さまざまな圧縮率の比較が含まれています。ただし、Nifleの答えで述べられているように、バイナリ形式でこのような高い圧縮率が得られることはほとんどありません。
完全な圧縮ベンチマークを構成する最高の圧縮リストを持つ複数ファイル圧縮ベンチマークテストの概要を確認してください。
このテストの(圧縮に基づく)上位のパフォーマンスは、PAQ8およびWinRK(PWCM)です。300+ Mbのテストセットを62 Mb未満に圧縮することができます(サイズが80%縮小)が、テストを完了するには最低でも8時間かかります。第1プログラム(PAQ8P)はほぼ12時間かかり、第4プログラム(PAQAR)はさらに17時間かかります。WinRK、2番目に最高の圧縮(79.7%)を備えたプログラムは、約8.5時間かかります。驚くことではないが、言及されたすべてのプログラムは、圧縮にPAQ(-like)エンジンを使用します。画像が埋め込まれたファイル(Word DOCファイルなど)がPAQ8を使用している場合、PAQ8はそれらを認識して個別に圧縮し、圧縮を大幅に向上させます。上記のすべてのプログラム(WinRKを除く)は無料です。
Nanozipは、FreeArcとともに最高の圧縮率を持っているようです。しかし、まだ最終版ではありません。Nanozipが実現する優れた圧縮方法があります。圧縮率が非常に高く、時間もかかりません。複数ファイル圧縮ベンチマークテストの概要を確認してください。ただし、FreeArcは高速です。