Edited at

Zの名を冠した圧縮形式Zstandardの基本的な使い方


Zstandardとは?

2016年の8月にFacebookがオープンソース化した圧縮アルゴリズム。

リアルタイム圧縮を重要視しており、圧縮率を維持しながら、高い圧縮速度と伸長速度、使用メモリ量の削減を実現しているそうだ。

また特異な点として、辞書を作成することで、更に圧縮率を高めることが可能。

多様な言語(Java, Swift, Go等)で実装されているのもうれしいところ。


インストール方法

macの場合ではhomebrewで簡単にできる。

$ brew install zstd


使い方


圧縮


  • ファイルを圧縮する。

$ zstd inputFile

# 出力ファイル名は inputFile.zstになる


  • 出力ファイル名を指定して、圧縮する

$ zstd inputFile -o outputFile.zst


  • 圧縮レベル[1-19](デフォルト:3)を指定して、圧縮する

$ zstd -11 inputFile



  • --ultraオプションをつけることで圧縮レベルを20以上にすることもできる。(最大:22)

$ zstd --ultra -22 inputFile


  • ディレクトリ内を再帰的に圧縮

    ※zstandardは圧縮アルゴリズムなので、ファイルアーカイブ機能はないです。

$ zstd -r inputDirectory


解凍

以下どちらでもOk.

# dはdecompress

$ zstd -d inputFile.zst

# unzipと同じ
$ unzstd inputFile.zst


参考

他の圧縮形式との比較はこちらを参照するといいかも。

最強の圧縮アルゴリズム ZStandard を試す - hidekatsu-izuno 日々の記録