Форум OlegON > Компьютеры и Программное обеспечение > Операционные системы и программное обеспечение

Сравнение архиваторов в 2017 году : Операционные системы и программное обеспечение

18.04.2024 23:23


16.03.2017 09:05
OlegON
 
Если кто не видел, было сравнение архиваторов в 2016 году, прошел почти год, предлагаю сравнить их сейчас. Присоединяйтесь к тестам, предлагайте новые тесты, опции и новые архиваторы? Я пока выкладываю то, что попалось сейчас:
Код:
 du -khs
 548G   .
дампы Oracle, 141 файл, кроме последнего - по 4Гб.
Код:
time tar -cvfj dump.tar.bz2 expdp/
151792312294, т.е. около 141Гб (144760M)
Время сжатия (Solaris SPARC T4):
Цитата:
real 2482m42.509s
user 2460m2.332s
sys 50m32.408s
параллельно работает
Код:
time  tar -cvf - expdp/ | xz -9e -c - > /backup/dump.tar.xz
еще вряд ли добрался до половины... 7z на Solaris кривой в этой инсталляции, пробовать не буду...
16.03.2017 14:23
OlegON
 
Итак, пока XZ мучается с полутерабайтом, попробую другие архиваторы.

Возьмем дамп базы форума (только текст 663M)
694869302 Mar 16 09:40 test.dmp
Код:
time xz -9e test.dmp
real    18m16.601s
user    18m13.984s
sys     0m0.648s
66738424
При приблизительно таком же размере, экстремальное сжатие работает значительно дольше, чем год назад… Почти вдвое. Зато и разница уже не килобайты.
Код:
time xz test.dmp
real    4m53.133s
user    4m52.307s
sys     0m0.299s
68909264
Старина arj еще жив, хотя и опции максимальной компрессии не предоставляет. Версия 3.10.22
Код:
time arj a test.dmp.arj test.dmp
real    0m35.330s
user    0m34.790s
sys     0m0.215s
110489799
Пробую свои излюбленные когда-то оцпии максимального сжатия, видно, что используются несколько потоков
Код:
time 7z a -mx=9 -ms=on -t7z -m0=lzma2 test.dmp.7z test.dmp
real    2m17.435s
user    8m39.318s
sys     0m2.099s
67725934
В обычном режиме не очень быстро, но нормально жмет...
Код:
time 7z a test.dmp.7z test.dmp
real    1m9.680s
user    5m41.905s
sys     0m1.486s
72564591
ZPAQ впечатлил компрессией и тем, что загрузил все ядра на 100% на некоторое время. Обращаю внимание, что это инкрементальный архиватор, т.е. если запихнуть в него существующие файлы, то сохранятся обе версии с временными метками.
Код:
time zpaq a test.zpaq test.dmp -m5
real    8m13.187s
user    47m59.825s
sys     0m7.137s
47700552
Без максимального сжатия жмет влет, но и результаты так себе... Да, графической оболочки не встретил, но и не особенно искал. Если у кого падает по памяти - смотрите параметр -t, т.е. количество потоков.
Код:
time zpaq a test.zpaq test.dmp
real    0m6.515s
user    0m29.901s
sys     0m1.437s
132392418
По gzip, собственно, никаких комментариев...
Код:
time gzip -9 test.dmp
real    1m20.833s
user    1m20.551s
sys     0m0.184s
109232579
Быстро, но слабо
Код:
time gzip test.dmp
real    0m21.428s
user    0m21.199s
sys     0m0.199s
111667188
Выполнил сначала с ключом максимальной компрессии, потом - без, удивился одинаковым результатам, залез в ман, действительно, по умолчанию как раз максимальное сжатие.
Код:
time bzip2 test.dmp
real    0m54.690s
user    0m54.371s
sys     0m0.236s
91187225
Разбавлю проприетарщиной
Код:
time rar a -m5 test.dmp.rar test.dmp
real    0m41.575s
user    3m58.984s
sys     0m1.208s
89726629
Нет, мне такое ни к чему
Код:
time rar a test.dmp.rar test.dmp
real    0m19.417s
user    1m35.708s
sys     0m1.167s
91197474
Листал пакеты, случайно обнаружил старика прошлого века
Код:
time arc a test.arc test.dmp
real    0m10.949s
user    0m10.720s
sys     0m0.215s
199709220
Не попадался раньше... Наткнулся случайно в пакетах...
Код:
time lzip -9 test.dmp
real    11m52.661s
user    11m50.199s
sys     0m0.407s
67080052
Неплохо, но как-то бессмысленно использовать в силу не особой популярности.
Код:
time lzip test.dmp
real    4m8.647s
user    4m7.954s
sys     0m0.253s
71916116
Итоговые результаты по максимальному сжатию
Код:
zpaq 47700552
xz 66738424
lzip 67080052
7z 67725934
rar 89726629
bzip2 91187225
gzip 109232579
arj 110489799
arc 199709220
Итоговые результаты по скорости максимального сжатия (i7 Haswell,SSD)
Код:
arc 0m10.949s
arj 0m35.330s
rar 0m41.575s
bzip2 0m54.690s
gzip 1m20.833s
7z 2m17.435s
zpaq 8m13.187s
lzip 11m52.661s
xz 18m16.601s
Итоговые результаты по скорости среднего сжатия (i7 Haswell,SSD)
Код:
zpaq 0m6.515s
arc 0m10.949s
rar 0m19.417s
gzip 0m21.428s
arj 0m35.330s
bzip 0m54.690s
7z 1m9.680s
lzip 4m7.954s
xz 4m53.133s
Какие выводы для себя сделал… Собственно, от архивации в 7z, понятно, не откажусь. Популярный архиватор и степень сжатия неплохая. Что плохо - он не выдается на среднем сжатии по скорости, но сжимают, как правило, не на скорость, кому она нужна - сжимает на уровне файловой системы. Порадовал XZ, явно его продолжают пилить и с некоторыми успехами. Порадовал старички arc и arj, просто своим присутствием :) Я думал, что они давно в истории. Rar неплохо выступает по скорости, но по сжатию весьма посредственно. Впрочем, я его серьезно и не рассматривал. Очень заинтересовал ZPAQ. Незнаю, насколько это стабильный проект, но он уже в стабильной ветке (в прошлом тестировании, как я помню, была еще только бета, потому и не рассматривалась). На очень долгое время архивы лучше не делать, некоторая непопулярность продукта может привести к тому, что через несколько лет архив будет нечем открыть. А так - очень интересно… Еще и кроссплатформенный.

Для себя рассматриваю исключительно 7z, bzip, gzip, xz. Посмотрим, может, добавлю zpaq локально образы хранить.
18.03.2017 20:00
OlegON
 
Попробовал 7z и ZPAQ на образе виртуалки
Код:
40008810496 мар 11 14:09 Book.raw (~38 GiB)
time 7z a -mx=9 Book.raw.7z  Book.raw
real	186m46.925s
user	233m13.146s
sys	2m8.890s
Код:
time zpaq a Book.raw.zpaq Book.raw -m5
real	461m39.377s
user	1870m5.313s
sys	9m0.353s
и результат
Код:
13102033023 мар 18 15:06 Book.raw.7z
12337121895 мар 18 19:40 Book.raw.zpaq
т.е. разница в гигабайт, при том, что zpaq у меня тут все просто положил на всех ядрах и крутился очень долго.
попробовал без опций zpaq
14237308714 и управился за 12 минут...

Тогда попробовал еще один образ около 30Гб
32212254720
но на этот раз никакие параметры не указывал и, что удивительно, zpaq работал около 6 минут, а 7z - чуть больше получаса, причем, zpaq по прежнему опередил в сжатии
Код:
4477758313 .7z
4295923965 .zpaq
18.03.2017 20:33
baggio
 
большой словарь? скоко весит zpaq
18.03.2017 20:38
OlegON
 
Цитата:
baggio большой словарь? скоко весит zpaq
Сам бинарник? 140Кб
18.03.2017 21:07
OlegON
 
Цитата:
OlegON 14237308714 и управился за 12 минут...
попробовал 7z в кучу потоков
Код:
time 7z a  -mmt=on Book.raw.7z Book.raw
результат - 24 минуты (вдвое больше против zpaq)
и 13780836871 где-то 4Гб разницы...

В общем, если что-то гигантское жать, то zpaq по скорости выигрывает сильно.
18.03.2017 21:49
OlegON
 
Попробовал bzip2 на том образе, что мучил без параметров
Почти 40 минут и 6Гб в итоге... Не конкурент.
19.03.2017 09:48
OlegON
 
Возвращаюсь к тестовому дампу в связи с обнаружением Long Range Zip (lrzip), который умеет множество форматов, но нацелен на большие файлы.
Код:
time lrzip -z test.dmp
real	1m57.983s
user	12m31.701s
sys	0m2.782s
61765928
как и многие случаи ZPAQ, компрессия впечатляет, в данном случае архиватор на втором месте в сравнении с максимальными степенями других архиваторов, хотя я не очень еще разобрался, как задать ему максимальную компрессию. И по скорости даже немного быстрее 7z, опять же, с максимальной компрессией. По умолчанию работает с минимальным приоритетом. Увы, пользователи Windows столкнутся с проблемой при разархивацией. Как я понял, бинарники под недоос не так просто найти (но в составе cygwin есть).

Заинтересовался темой, читаю, впечатлился, что в тестах какая-то утилита, лидер компрессии, сжимала гигабайт текста несколько дней :) Это уже как-то перебор...
19.03.2017 10:06
student
 
Цитата:
OlegON Увы, пользователи Windows столкнутся с проблемой при разархивацией. Как я понял, бинарники под недоос не так просто найти.
я конечно могу ошибаться - давно это было. . . но бинарник кажется входит в состав Cygwin. . .
19.03.2017 13:25
OlegON
 
Сжатие базы данных Oracle (~25Гб)
Код:
time lrztar -z db
real	55m50.293s
user	364m40.308s
sys	1m26.131s
1144929059
Код:
time 7z a -mx=9 db.7z db
real	52m35.342s
user	194m41.336s
sys	1m4.563s
1286266354
Код:
time zpaq a db.zpaq db -m5
real	194m57.475s
user	1361m41.700s
sys	4m34.118s
924082272
Часовой пояс GMT +3, время: 23:23.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.