一般用語
上級

bzip2 (1996)(ビーズィップツー)

Julian Seward が 1996 年に開発した可逆圧縮アルゴリズム。Burrows-Wheeler Transform (BWT) + Move-To-Front (MTF) + Huffman 符号化の独自組合せで、gzip (Deflate) より 10-15% 高い圧縮率を実現、UNIX/Linux で広く利用された。

0 回閲覧
0 いいね
2026/5/11 更新
関連タグ
bzip2
BWT
Burrows-Wheeler Transform
Julian Seward
Huffman
1996

概要

bzip2 は、Julian Seward が 1996 年に開発した可逆圧縮アルゴリズムで、Burrows-Wheeler Transform (BWT) + Move-To-Front (MTF) + Huffman 符号化の独自組合せにより、gzip (Deflate) より 10-15% 高い圧縮率を実現した UNIX/Linux 系で広く利用された圧縮ツールです。BWT で類似文字を集約・MTF で出現頻度順に並び替え・Huffman で符号化という三段階アプローチで、特にテキストファイル・ソースコードの圧縮率に優れています。1996 年公開、2002 年バージョン 1.0.2 で安定化、2008 年バージョン 1.0.5 以降は開発が停滞気味で、現代では Zstandard (LZ77 系・10 倍以上高速) や xz (LZMA ベース・更に高圧縮) への置き換えが進んでいます。Wikipedia の全ダンプファイル (約 30GB) は bzip2 圧縮で配布されており、Linux パッケージ管理 (Debian .deb・RPM 系) でも長年標準利用されてきました。

主な特徴・仕組み

  • 発表: 1996 年 Julian Seward
  • アルゴリズム: BWT + MTF + Huffman 符号化の三段階
  • BWT: 文字列を循環置換でソート、類似文字を集約
  • MTF (Move-To-Front): 出現文字を「最前」に動的移動、頻度順表現
  • Huffman: 最終段の可変長符号化
  • ブロックサイズ: 100KB-900KB 単位で処理
  • メモリ使用量: 圧縮 7.6MB (900KB ブロック)、解凍 3.7MB
  • 圧縮率: gzip 比 +10-15%、xz 比 -5-10%
  • 速度: gzip より 5-10 倍低速、解凍も低速
  • 特許: なし、完全 OSS

スペック比較表

ツール圧縮率 (テキスト)圧縮速度解凍速度メモリ
gzip (Deflate)60-75%10-30MB/s50-200MB/s64KB
bzip270-80%1-5MB/s5-20MB/s8MB
xz (LZMA2)80-90%0.5-3MB/s30-80MB/s64-700MB
Zstandard65-85%50-300MB/s300-1000MB/s1-256MB
Brotli70-80%5-20MB/s50-300MB/s16MB

具体例・対応技術

  • tar.bz2 / .tbz2: tarball + bzip2 圧縮、Linux 配布物の伝統的形式
  • Wikipedia ダンプ (~30GB bz2): 全 Wikipedia 記事の bzip2 圧縮配布
  • Linux パッケージ (.deb/.rpm): 初期 Linux ディストリビューションで利用
  • 古い Linux カーネル (linux-x.y.z.tar.bz2): kernel.org で配布
  • PHP ソースアーカイブ (php-x.y.z.tar.bz2): 公式配布形式

自作PCでの選び方・注意点

bzip2 は 2026 年現在も Wikipedia ダンプ・古い Linux ソースアーカイブ・古い Debian/Ubuntu パッケージで利用されますが、新規アーカイブでは Zstandard (zstd) または xz (tar.xz) への移行が主流。Ubuntu 22.04 LTS 以降のデフォルトカーネルパッケージは xz、Arch Linux は zstd で配布されています。自作 PC で大量データバックアップ・AI モデル配布する用途では bzip2 は速度面で不利、Zstandard (zstd -19) を推奨。Wikipedia 全データの自作 PC 解析用途で bzip2 -d 解凍が必要となるケースがあり、tarball 展開で時間がかかるためマルチコア対応版 pbzip2 (パラレル版) や lbzip2 の利用が推奨されます。HDD/SSD への保存・転送速度を考慮すると、Zstandard レベル 19 が現代のベストプラクティス。

関連用語との違い

  • gzip (Deflate): 速度優先・互換性、bzip2 より低圧縮率
  • xz (LZMA2): 高圧縮率優先、bzip2 より更に高圧縮・大メモリ
  • Zstandard: 現代後継、bzip2 圧縮率を 10 倍高速で実現

よくある質問(FAQ)

Q1: bzip2 と xz どちらが良い? A: 圧縮率なら xz、速度・メモリなら bzip2。現代の新規アーカイブは Zstandard が両者を上回るためそちらを推奨。

Q2: なぜ開発停滞気味? A: Julian Seward (Valgrind の開発者でもある) のメンテナンス時間が限定的、後継 bzip3 (BWT 強化) もあるが普及せず。Zstandard 等の現代ツールに役目を譲った形。

Q3: Wikipedia ダンプを解凍するには? A: bunzip2 enwiki-latest-pages-articles.xml.bz2 または tar -xjf で展開。30GB ファイルの解凍には数時間かかる、pbzip2 でマルチコア活用推奨。

まとめ

  • bzip2 = 1996 年 Julian Seward 開発、BWT + MTF + Huffman の三段圧縮
  • gzip 比 +10-15% 圧縮率、ただし速度低い
  • Wikipedia ダンプ・Linux 配布物で 1990-2010 年代に活躍
  • 2020 年代以降 Zstandard/xz に置換が進行、レガシー化
この記事について
カテゴリー一般用語
難易度上級
作成日2026/5/11