it-swarm-ru.tech

Плюсы и минусы bzip против gzip?

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

118
ripper234

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. Другие форматы имеют свободную реализацию и не имеют (серьезных) патентных претензий.

143
Gilles

Насколько я могу судить, gzip работает быстрее, а bzip - лучше (меньше).

23
Lie Ryan

Алгоритмы имеют разное время, память, пространственные компромиссы. Имейте в виду, что эти алгоритмы были написаны довольно давно, и ваш смартфон имеет во много раз больше процессоров, чем настольные компьютеры того времени.

Ваш выбор между универсальностью (.gz) и немного большим сжатием (.bz2). Только вы можете сказать, что вас волнует больше.

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

5
Rich Homolka

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

3
Scott McClenning

Per http://tukaani.org/lzma/benchmarks.html , gzip сжимает в два раза быстрее, чем bzip2, и распаковывает в десять раз быстрее.

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

1
Hugh Perkins

По моему опыту, bzip предлагает неизменно лучшие коэффициенты сжатия, чем gzip. Кроме того, с 7Zip в качестве менеджера и алгоритмом bzip, 7Zip может использовать многоядерные процессоры.

1
Sathyajith Bhat