FORMAT COMPARISON
Brotli vs Zstandard
BrotliとZstandard(zstd)は異なる可逆ストリーム形式です。BrotliはWebコンテンツ符号化brで使われ、Zstandardは調整可能なフレーム圧縮、ストリーム処理や辞書利用などに対応します。
BrotliとZstandard、どちらを選ぶ?
HTTPの事前圧縮テキストでBrotli配信を利用する構成ならBrotliを評価します。アプリケーション間のデータ転送や設定可能な圧縮レベル・辞書が必要ならzstdを検討します。対象クライアント、保存方法、圧縮・展開コストを実データで比較してください。
Brotli向き
可逆圧縮ストリームの保存・対応するHTTP配信でコンテンツを圧縮する
- Webテキストなどの配信前圧縮をサーバーとクライアントが扱える場合
- Brotli対応ツール間の圧縮データ交換
Zstandard向き
単一ファイルやストリームの可逆圧縮・ソフトウェア配布物やデータ転送の圧縮
- zstd対応環境で圧縮率と処理速度のバランスを調整する
- ストリーミングや辞書圧縮を使う用途
基本情報を比較
BrotliとZstandardの主な違いを確認できます。
| 項目 | Brotli | Zstandard |
|---|---|---|
| 拡張子 | .br | .zst |
| MIME Type | application/octet-stream | application/zstd |
| 主な用途 | 可逆圧縮ストリームの保存・対応するHTTP配信でコンテンツを圧縮する | 単一ファイルやストリームの可逆圧縮・ソフトウェア配布物やデータ転送の圧縮 |
| 圧縮 | 可逆圧縮 | 可逆圧縮 |
| 開く方法 | Brotli対応の解凍ツールやライブラリで復号します。Webサーバーで事前圧縮ファイルを配る場合は、対応するリクエストにContent-Encoding: brを付け、ファイル名・MIME・キャッシュ設定が適切であることを確認してください。 | zstd対応の展開ツールやライブラリを使います。未知の圧縮ファイルを扱う前に、入手元、展開後サイズ、利用可能なメモリを確認してください。 |
| 書き出し・変換 | gzipやzstdへ変換する場合は一度展開して再圧縮します。出力内容をチェックサムなどで検証し、実際のデータで圧縮サイズ、生成時間、配信先の対応を比較します。拡張子.brだけで中身やHTTPヘッダーを判定しないでください。 | gzipやxzなどへ変換する場合は、展開してから再圧縮します。変換後にファイル内容とチェックサムを比較し、圧縮方式、処理時間、サイズ、受信側互換性も確認してください。tar.zstはtarアーカイブをzstd圧縮した構成であり、.zst単体とは異なります。 |
用途別の選び方
作りたいものや使う場面から選べます。
Webテキストなどの配信前圧縮をサーバーとクライアントが扱える場合
可逆圧縮ストリームの保存・対応するHTTP配信でコンテンツを圧縮する
Brotli向きBrotli対応ツール間の圧縮データ交換
可逆圧縮ストリームの保存・対応するHTTP配信でコンテンツを圧縮する
Brotli向きzstd対応環境で圧縮率と処理速度のバランスを調整する
単一ファイルやストリームの可逆圧縮・ソフトウェア配布物やデータ転送の圧縮
Zstandard向きストリーミングや辞書圧縮を使う用途
単一ファイルやストリームの可逆圧縮・ソフトウェア配布物やデータ転送の圧縮
Zstandard向き確認ポイント 1
BrotliとZstandardは別の圧縮ストリーム形式で、バイト列に互換性はありません。変換には復号と再圧縮が必要です。
使い分け確認ポイント 2
BrotliはHTTP Content-Encoding: brで配信でき、.br事前圧縮ファイルとして置く構成もあります。zstdにはapplication/zstdメディアタイプが登録され、zstd対応アプリや配信先が必要です。
使い分け選ぶ理由を詳しく
- どちらも設定やデータによりサイズ・速度が変わり、単独では複数ファイルのアーカイブではありません。辞書やストリーム境界を使う場合は復号側にも同じ前提を共有します。