7Z形式について
7Z は、Igor Pavlov が自身のアーカイバ 7-Zip のために開発したオープンソースのアーカイブ形式です。ZIP の Deflate より強力に圧縮する LZMA と LZMA2 アルゴリズムを使用しています。当社のテストでは、当社の変換ツールで作成した 7Z が ZIP と比べてソースコードで 60%、プログラムのバイナリで 38%、コード・バイナリ・写真の混在セットで 28% 小さくなりました。この形式は最大 16 エクサバイトのファイルサイズ、強力な AES-256 暗号化に対応し、1 つのアーカイブ内で複数の圧縮アルゴリズムを組み合わせることもできます。
7Zから変換する理由
7Zは優れた圧縮率を誇りますが、多くのシステムでは開くために専用のソフトウェアが必要です。ZIPのようなより汎用性の高い形式に変換すれば、Windows、macOS、Linuxに標準搭載されているツールとの互換性を確保できます。Unix系のワークフローでは、TAR.GZ、TAR.BZ2、TAR.XZへの変換によってネイティブサポートが得られ、標準的なパッケージ配布の慣行にも合致します。
圧縮アルゴリズムの比較
7Zで使われるLZMA2アルゴリズムは、特にテキストベースのファイルや実行ファイルにおいて、ほとんどのファイル形式で優れた圧縮性能を発揮します。ZIPに変換すると、圧縮効率の一部と引き換えに幅広い互換性が得られます。TAR.XZはLinuxシステムで標準的に使われながら、7Zに匹敵する圧縮率を実現します。TAR.BZ2は圧縮率と互換性のバランスが取れた選択肢で、TAR.GZは最大圧縮よりも展開速度の速さを優先しています。
7Z変換のベストプラクティス
変換先の形式は、配布先や用途に応じて選びましょう。あらゆるプラットフォームや技術に詳しくないユーザーとの互換性を最優先するならZIPへの変換が最適です。強力な圧縮が必要なLinux向けソフトウェアの配布にはTAR.XZを選択してください。ファイルサイズよりも展開速度を重視するWebサーバーや環境にはTAR.GZが向いています。XZ圧縮にまだ対応していない古いUnix系システム向けにはTAR.BZ2を検討してください。
7Zの技術仕様
7Z形式は、LZMA、LZMA2、PPMd、BZip2、Deflateなど複数の圧縮方式に対応しています。標準かつ最も効率的なのはLZMA2で、最大1.5GBの辞書サイズを使って高い圧縮率を実現します。この形式はデフォルトでソリッド圧縮を採用しており、複数のファイルを1つの連続したデータストリームとして扱うことで、類似したファイル群に対してより高い圧縮率を発揮します。
7Zアーカイブはファイルの中身とファイル名の両方にAES-256暗号化を適用でき、標準的なZIPの暗号化よりも高いセキュリティを提供します。また、Unicodeのファイル名にも対応しているため、どのシステムでも各国の文字を正しく表示できます。
7Z変換のよくある利用シーン
多くのメールシステムが7Zファイルをブロックしたり警告を表示したりするため、メール添付にはZIP形式が求められることがよくあります。エンドユーザー向けのソフトウェア配布では、ZIPの高い認知度が有利に働きます。WindowsとLinuxの両方で開発するチームは、デプロイ先の環境に応じて7ZとTAR形式を使い分けることがあります。
7Z形式のバックアップアーカイブは、7-Zipがインストールされていないシステムに復元する際に変換が必要になることがあります。復元前にネイティブ形式へ変換しておけば、追加のソフトウェアに依存せずスムーズにアーカイブ内のファイルへアクセスできます。