Zstandard

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。Nekohan (会話 | 投稿記録) による 2022年11月28日 (月) 05:24個人設定で未設定ならUTC)時点の版 (版情報更新)であり、現在の版とは大きく異なる場合があります。

Zstandard
作者 Yann Collet
開発元 Yann Collet, Przemysław Skibiński (inikep)
初版 2015年1月25日 (2015-01-25)
最新版
1.5.2 / 2022年6月21日 (22か月前) (2022-06-21)[1]
リポジトリ ウィキデータを編集
プログラミング
言語
C言語
対応OS クロスプラットホーム
プラットフォーム Portable
サポート状況 開発中
種別 データ圧縮
ライセンス BSDライセンスGPLv2デュアルライセンス
公式サイト facebook.github.io/zstd/
テンプレートを表示

Zstandard (Zstd) は、2015年からFacebookに所属しているYann Colletによって開発された可逆圧縮アルゴリズムである。またCで書かれた前述のアルゴリズムのリファレンス実装の名前でもある。この実装のバージョン1は2016年8月にフリーソフトウェアとして公開された[2][3]

特徴

Zstandardは現在主流であるDeflate (ZIP, gzip) アルゴリズムによるものと遜色ない圧縮を、より高速に行えるように設計されている。

Zstandardは大きな検索窓の辞書式圧縮アルゴリズム (LZ77) とエントロピー符号化を併用しており、エントロピー符号化ステージで有限状態エントロピー(FSE)のtANS英語版 あるいはハフマン符号化を使用している[4]。Zstandardの実装で特徴的なのはエントロピー復号時に逆方向から読み取ることである。

ライセンス

リファレンス実装はBSDライセンスGitHubにおいて公開されている。1.0以降のバージョンにおいては関連する特許の使用を認める追加ライセンス[5] も付属している。

バージョン1.3.1 [6] から、この特許条項は削除され、ライセンスはBSD + GPLv2デュアルライセンスに変更された[7]

利用例

Linuxカーネルには2017年11月(バージョン4.14)からZstandardが含まれており、btrfsやsquashfsファイルシステムでの圧縮方法として利用可能となっている。また、2020年10月(バージョン5.9)からカーネルイメージの圧縮方法として利用可能となった。

FreeBSDカーネルには2017年からZstandardが含まれており、コアダンプ(ユーザープログラムとカーネルパニックの両方)の圧縮オプションとして利用可能となっている。

UbuntuやArch Linux等、一部のLinuxディストリビューションでパッケージ圧縮方式としてZstandardが利用できるようになった。xzに比べてパッケージのサイズが若干増加するが、展開速度は格段に高速になる。

参照

参考文献

外部リンク