Edited at

一度はちゃんと確認しておきたいデータ圧縮形式

More than 1 year has passed since last update.


はじめに

なるべくファイル転送の際のデータサイズを小さくしたいと思った経緯があったので,

なにげなく使ってしまっているzip, gzip, tar, 7z, rarについて簡単にまとめてみた :smiley_cat:


zip


  • ポイント


    • 複数ファイルを1つにまとられる

    • 圧縮も同時にできる




ZIPは複数のファイルを格納するシンプルなアーカイブフォーマットである。

圧縮はzipアーカイブのオプションであり、圧縮が行われる場合はファイル単位に圧縮される。

32ビットのCRCアルゴリズムを使用し、データの破損に備えて優れた保護機構を提供するためにアーカイブのディレクトリ構造のコピーを2つ持っている。


引用元:ZIP (ファイルフォーマット)


gzip


  • ポイント


    • gzipはzipとは違って,ファイルアーカイバとしての機能はない

    • 複数ファイルに対しては,tarでアーカイブしたファイルをgzip圧縮するのが一般的




gzip(ジー・ジップ)は、データ圧縮プログラムのひとつ、およびその圧縮データのフォーマットである。

「GNU zip」の略でありGNUプロジェクトによって開発・メンテナンスされている。


引用元:gzip


tar


  • ポイント


    • アーカイバ,圧縮はしない

    • gzipといった他の圧縮方法と合わせて用いられることが多い(tar.gz, tar.bz2 の用に2重の拡張子となる)




tarはファイルのアーカイブに用いられ、多数のファイルを一つのファイルにまとめることができる。

その際、ファイルのユーザ情報とグループ情報、パーミッション、最終更新日時、ディレクトリ構造などを同時にアーカイブすることができる。

元来tarが行うのはアーカイブ、すなわち複数のファイルをまとめることのみで、圧縮の機能はない

そのため、大半の場合には、アーカイブと同時に、compressやgzip、bzip2などの圧縮方法を用いて圧縮(いわゆる「ソリッド圧縮」)を行う。

引用元:tar


ここで出てきたソリッド圧縮についてはこちら :arrow_down:


複数のファイルをまとめて1つのアーカイブファイルを作成する際に同時にファイル圧縮することは、まとめて符号化を行えるのでデータ圧縮の効率を高めることができる。これをソリッド圧縮という。


引用元:アーカイブ (コンピュータ)


7-Zip


  • ポイント


    • 主にWindowsユーザに向けたファイルアーカイバ

    • ファイルアーカイブ, 圧縮, 暗号化に対応





  • LZMAやLZMA2方式を備えた7zファイルにおける高いデータ圧縮率

  • ZIP形式とGZIP形式において、7-ZipはPKZipやWinZipより2~10%圧縮率が高い

  • 7z形式とZIP形式において、強力なAES 256暗号化に対応

  • 7z形式において自己解凍(展開)に対応

  • Windowsのシェルに統合


引用元:7-Zip


rar


  • ポイント


    • 圧縮率: zip < rar > 7zip

    • mp3のようなメディアファイルではrarの方が7zipより高い圧縮率




ZIP に比べ高い圧縮率であり、他の圧縮形式にはあまり見られない特色としてリカバリレコードが挙げられる。


引用元:RAR


読んでみるといい資料 (いい感じにまとまっている)