Какой формат сжатия файлов лучше — 7z, zip или rar?
На днях ко мне обратились с вопросом, какой тип архива лучше всего сжимает файлы? Я уже не раз встречал тесты-сравнения эффективности различных алгоритмов сжатия. Практически всегда в них побеждает 7z. Однако я решил не давать столь однозначный ответ. И вот почему: степень сжатия является не единственным критерием, позволяющим определить лучший тип архива.
На степень сжатия файла влияет и программа, которую используют для создания архива, и ее настройки, и особенности сжимаемого файла. Кроме того, я бы не стал упускать из вида удобство использования формата сжатия и степень его интеграции в операционные системы. Если мы сжимаем документ для отправки по электронной почте, то должны быть уверены в том, что получатель сможет без проблем распаковать его.
Маленький тест
И, все же, уменьшение объема файла — это основная функция архиватора. Поэтому я решил провести собственное сравнение алгоритмов. В серьезных тестах обычно испытывается работа архиваторов с файлами разных типов. А в самых продвинутых — еще и подыскивают оптимальные настройки. Я поступлю проще: сжимать буду папку с установленной игрой — ведь в ней находятся разные типы данных: и музыка, и графика, и документация, и исполняемые файлы. Настройки же программ-архиваторов я не буду изменять — именно так поступает большинство пользователей.
Итак, игра Bastion — объем папки 863 МБ:
- Zip (интегрированный в Windows 8.1) — 746 МБ (86,4% от исходного объема);
- Zip (WinZip) — 745 МБ (86,3%);
- RAR (WinRAR) — 746 МБ (86,4%);
- 7z (7-Zip) — 734 МБ (85%).
Игра Hotline Miami — объем папки 654 МБ:
- Zip (интегрированный в Windows 8.1) — 316 МБ (48,3% от исходного объема);
- Zip (WinZip) — 314 МБ (48%);
- RAR (WinRAR) — 307 МБ (46,9%);
- 7z (7-Zip) — 301 МБ (46%).
Таким образом, победителем в соревнованиях на сжатие файла, как я и предполагал, вышел 7z. Но стоит ли выбирать именно этот формат? Я думаю, далеко не всегда.
Интеграция и распространение
В конце концов, 7z не так уж и далеко вырвался вперед. Zip и RAR, буквально, дышат ему в спину. А какой из этих форматов без проблем «переварит» ваш компьютер или система того пользователя, которому вы передадите сжатый файл?
По степени распространенности лидирует Zip. Инструменты для работы с ним интегрированы в Windows и OS X. Большинство дистрибутивов Linux поддерживают Zip из коробки. В Chrome OS сразу после установки мы можем сжимать и распаковывать файлы в форматах Zip и RAR.
А что же 7z? Для работы с ним необходимо скачать и установить отдельное приложение. Пусть даже это и бесплатная программа, но стоит ли 1—2% от объема файла этой возни? А если вы передаете архив человеку, далекому от всего этого, то придется потратить уйму времени, чтобы объяснить ему, как поступить с файлом.
Поэтому я рекомендую использовать 7z только в той ситуации, когда действительно необходимо добиться максимальной степени сжатия файла. Можно еще поупражняться с настройками архиватора и уменьшить размер файла еще сильнее (но это обернется потерей времени на сжатие и распаковку, а также повысит риск потери данных).
Во всех остальных случаях, нам стоит выбирать Zip, как самый распространенный формат архивов. Пусть файл будет сжат чуть менее плотно. Зато его сможет создать и открыть любой пользователь, на любом современном компьютере.