Плюси і мінуси bzip vs gzip?


113

Я знаю gzip роками, нещодавно я побачив bzip використовуватися на роботі. Чи є вони в основному еквівалентними, або існують значні плюси і мінуси одного з них над іншим?


2
Хоча це старе питання з правильною та правильною відповіддю, я хотів би вказати на цей результат Google: tukaani.org/lzma/benchmarks.html так як він розбиває його далі
Mayhem

Чи не є bzip для стиснення та gzip для архівування?
juniorRubyist

@JuniorRubyist джерело?
ripper234

Я тільки що чув. Я забув, де.
juniorRubyist

Ніяких згадок про довільний доступ? stackoverflow.com/questions/14225751/…
neverMind9

Відповіді:


139

Gzip і bzip2 функціонально еквівалентні. (Там колись був bzip, але це, здається, повністю зникло з обличчя світу.) Інші поширені формати стиснення - zip, rar і ​​7z; ці три програми виконують як стиснення, так і архівування (упаковка декількох файлів в одну). Ось деякі типові оцінки швидкості, доступності та типового коефіцієнта стиснення (зауважте, що ці рейтинги є дещо суб'єктивними, не приймайте їх як євангельські)

decompression speed (fast > slow): gzip, zip > 7z > rar > bzip2
compression speed (fast > slow): gzip, zip > bzip2 > 7z > rar
compression ratio (better > worse): 7z > rar, bzip2 > gzip > zip
availability (unix): gzip > bzip2 > zip > 7z > rar
availability (windows): zip > rar > 7z > gzip, bzip2

Як ви бачите, переможця не існує. Якщо ви хочете покладатися на програми, які, ймовірно, вже будуть встановлені, використовуйте zip на Windows (або, якщо можливо, саморозпаковуються архіви, як Windows не постачається з будь-яким з них) і gzip на unix. Якщо потрібно максимальне стиснення, використовуйте 7z.

Rar також має недолік, що, наскільки я знаю, немає вільного програмного забезпечення, що створює rar архіви або які можуть розпакувати всі rar архіви. Інші формати мають вільні реалізації і не мають (серйозних) патентних претензій.


2
наскільки я можу сказати, всі версії Windows, починаючи з XP, не можуть відкрити zip-файл з використанням файлового провідника
Lie Ryan

1
bzip2 є менш доступним, ніж gzip? Які системи UNIX ні поставляються з bzip2?
new123456

21
@ new123456 У OpenBSD gzip знаходиться в базовій системі, але bzip2 має бути встановлено з пакета. Багато маршрутизаторів * WRT включають gzip, але не bzip2.
Gilles

2
@Gilles Я можу підтвердити, що мій DD-WRT реліз: 08/12/10 (SVN ревізія: 14929) не має bzip2, але має gzip.
Urda

7
@mlainz Оригінальні дослідження. Це не Вікіпедія.
Gilles

23

Наскільки я можу сказати, gzip відбувається швидше, в той час як bzip загалом забезпечує краще (менше) стиснення.


Крім того, gzip трохи краще підтримується, особливо на Windows.
Dentrasi

5
@Dentrasi: winrar / 7zip підтримують обидві, в чому проблема?
whitequark

@whitequark: широку підтримку найважливіше для unix, оскільки користувачі можуть не мати доступу до кореневої системи і повинні працювати з тим, що вже встановлено. Також застосовується до середовищ Windows, де користувач не має доступу адміністратора (школи / бібліотеки / тощо).
Matthew

4
@Matthew, вам не потрібні права адміністратора, щоб використовувати багато перенесеного вільного програмного забезпечення, включаючи 7zip.
whitequark

1
@IQAndreas: деякі тести: 1 , 2 , 3
Lie Ryan

4

Алгоритми мають різний час, пам'ять, просторові компроміси. Майте на увазі, що ці алгоритми були написані досить давно, і ваш смартфон у багато разів більше ЦП, ніж настільні комп'ютери тих днів.

Ваш вибір між універсальністю (.gz) і трохи більше стисненням (.bz2). Тільки ви можете сказати, про якого ви піклуєтеся більше.

Однією з переваг .gz є те, що він може стискати потік, послідовність, де ви не можете дивитися ззаду. Це робить його офіційним компресором потоків http. Мені потрібно було використовувати один раз gzip через це, але навряд чи вам доведеться думати про це.


3

Ось список сайтів, які випробовують алгоритми стиснення, щоб знайти тільки bzip і gzip вам доведеться зробити деякі копання, але більшість сайтів буде перераховувати характеристики алгоритмів. Таким чином можна порівняти важливі для вас розміри (коефіцієнт стиснення), час, пам'ять, процесор.
http://www.maximumcompression.com/benchmarks/benchmarks.php


1

З мого досвіду bzip запропонував послідовно кращі коефіцієнти стиснення, ніж gzip. Плюс з 7zip як менеджер і алгоритм bzip, 7zip може використовувати багатоядерні процесори.


1

Пер http://tukaani.org/lzma/benchmarks.html , gzip стискається вдвічі швидше, ніж bzip2, і розпаковується десять разів швидше.

Наприклад, для використання з кешування s3, на travis і т.д., де ви хочете швидкість стиснення / розпакування, а не тільки малі розміри, GZIP може бути хорошим компромісом.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.