Gzip vs Bzip2

Před časem jsem vybíral vhodný archivovací/zálohovací nástroj. Nakonec jsem zvolil klasiku: tar.

tar cvpzf /backup/backup-dokumenty-`date +"%F"`.tgz  /home/dundee/Dokumenty

Tar je velmi rychlý, nepotřebuje grafiku a nabízí dostatek možností konfigurace. Tar poskytuje ke komprimaci dvě metody:

  • Gzip
  • Bzip2

Zajímalo mě, jak jsou obě metody rychlé a jaký mají kompresní poměr, proto jsem sestavil tento jednoduchý testík. Obě metody byly použity v základním nastavení. Jelikož zde šlo především o archivaci a zálohování, není čas dekomprese tak zásádní. Proto byl jako kritérium výkonu vybrán jednoduchý vzorec výkon = (kompresní poměr / čas komprimace). Čím větší, tím lepší :)

Komprimace převážně zdrojových kódů (714 MB)

metodačas komprimacečas dekomprimacevelikost archivukompresní poměrvýkon(e-6)
Gzip12327622,81.14643545279383439320
Bzip2488228614,81.16135328562134042379

Komprimace SQL dumpu (13,8 MB)

metodačas komprimacečas dekomprimacevelikost archivukompresní poměrvýkon(e-3)
Gzip2,3470,3564,92.81632653061224491200
Bzip25,8212,5223,63.8333333333333335658

Komprimace binárních souborů - fotek (2867 MB)

metodačas komprimacečas dekomprimacevelikost archivukompresní poměrvýkon(e-6)
Gzip36313427751.03315315315315332846
Bzip2174298727611.0383918869974647596

Závěr

Výsledek je zřejmý na první pohled. Používat při archivaci metodu Bzip2 se vyplatí pouze pokud komprimujeme textové soubory, opravdu hodně nám záleží na výsledné velikosti archivu a máme spoustu času. V ostatních případech je favoritem Gzip. Gzip je ve srovnání s Bzip2 velmi rychlý a kompresní poměr je také vcelku dobrý.

V poměru cena (čas) / výkon (kompresní poměr) je tedy Gzip jasným vítězem testu. :)

Hodnocení

Komentáře

[1] sNop
2008-07-30 13:04:07

zajimavy test, take neco sem potreboval videt, dik za snahu ;)

[2] Heron
2008-11-01 05:56:34

Ono dost záleží na pořadí souborů. Tar to bere podle toho, jak mu to přijde pod ruku, komprimační algoritmus pak často zahazuje slovník a archiv bobtná.

Mnohem lepší výsledky jsou se soubory upořádanými podle typu (solid archive). Mnoho souborů stejného typu má alespoň stejné hlavičky (když už ne třeba obsah v podobě html tagů, slov atd.), takže alg. může jeden slovník použít pro větší množství souborů.

Toto nastavení (solid) má třeba rar a 7zip (který je teď asi nejlepší co se týče komprimačních schopností, zvláště, pokud mu dáte hodně paměti pro komprimaci) a možná i další (nezkoumal jsem).

Komentáře již nelze přidávat