Aback ZIP
ローカルで処理
基礎5 min read

ZIP vs TAR: 違いは何か?

TARはファイルを圧縮せずに束ね、ZIPは束ねて圧縮します。それぞれが適した場面を学びます。

ZIPとTARはどちらも複数のファイルを1つのアーカイブにまとめますが、仕組みが異なります。TARはファイルを圧縮せずに単純に連結します。ZIPは束ねる際に各エントリを圧縮します。この1つの違いが、実際の違いのほとんどを説明します。

TARの役割

TARはテープアーカイブの略で、シーケンシャルストレージにファイルを書き込むために設計されました。各ファイルを記述するヘッダとともに、ファイルを次々に保存しますが、何も圧縮しません。

ZIPの役割

ZIPはファイルを束ね、単一の形式で圧縮します。各ファイルは個別に圧縮され、アーカイブ末尾の中央ディレクトリがすべてのエントリを記述します。

主な違い

  • 圧縮: ZIPはデフォルトで圧縮します。TAR単体では圧縮しません。
  • ランダムアクセス: ZIPのエントリは個別に読み取れます。TARは先頭からスキャンする必要があることが多いです。
  • プラットフォーム: ZIPはWindowsとmacOSでネイティブ。TARはLinuxとmacOSのターミナルがネイティブ。
  • メタデータ: TARはUnix権限をより忠実に保持します。ZIPはDOS風の属性を保持します。
  • ストリーミング: TARはストリームとして作成でき、バックアップやパイプで人気があります。

どちらを使うべきか?

あらゆるデバイスの人とファイルを共有するには、どこでもサポートされ束ねながら圧縮するZIPが実用的な選択です。Unix系のワークフロー、バックアップ、ソフトウェア配布には、gzip圧縮付きTARが長年の慣習です。

Frequently asked questions

.tar.gzは.zipより小さいですか?

場合によります。gzipはストリーム全体を1つの単位として圧縮しますが、ZIPは各ファイルを個別に圧縮します。小さなファイルが多数ある場合、TARとgzipの組み合わせの方が少しよく圧縮できます。

WindowsはTARファイルを開けますか?

現代のWindowsには.tarと.tar.gzの組み込みサポートがあり、macOSも開けます。ZIPは引き続き最も広く互換性のある選択肢です。