[ОТВЕТИТЬ]
Опции темы
12.02.2014 10:19  
OlegON
Кто каким архиватором пользуется для сжатия данных?
Почему? Не хотите различные тесты погонять? Предлагаю посравнивать разные архиваторы, обязательно указывая опции запуска, время выполнения и степень сжатия. Если кому-то лень пробовать самому - упомяните в теме название архиватора, я погоняю.
Предполагается ряд тестов, позволяющих понять, как правильно выбрать архиватор под свои нужды.
Сейчас выберу по паре iso, bmp и больших доков. Дополните, если надо будет что-то еще попробовать пожать из того, что можно легко достать или сгенерить. Мои тесты - под Linux. Но суть алгоритмов не меняется, поэтому значения это не имеет, я думаю.
Начну с 7zip, xz, bzip2 и zip. До сих пор в лидерах был 7zip. Я им всегда пользовался.
 
12.02.2014 11:29  
Iggy
7z - доступный и самый распространенный
 
"Спасибо" Iggy от:
12.02.2014 16:36  
twix
7zip
 
"Спасибо" twix от:
12.02.2014 17:51  
twix


Статейке, правда, год уже... Но, думаю, расстановка сил не изменилась.

WinRAR, кстати, поразил. Когда-то давно считалось, что zip сосёт, а за rar'ом будущее.
 
12.02.2014 20:48  
OlegON
Я, собственно, почему зашевелился, что 7z не разбирается поисковиками, например. Когда-то, например, для выкладывания архивов, это не очень хорошо.
Если Zip будет не сильно отрываться по тестам, то есть смысл в нем все оставлять... В общем, доберусь. Завал традиционный.
 
13.02.2014 09:30  
izuware
7zip. жму для передачи через сеть скульные бекапы. локально архиваторами не пользуюсь, в крайнем случае средствами файловой системы.
 
22.02.2014 09:36  
OlegON
Итак,

Код:
-rw-r--r--  1 olegon users 	449024 Jun 13  2006 1.doc
-rw-r--r--  1 olegon users  641845248 May 27  2009 1.iso
-rw-rw-rw-  1 olegon users	2290176 Jul 28  2011 2.doc
-rw-r--r--  1 olegon users  380299264 Jan  9  2012 2.iso
-rw-r--r--  1 olegon users 1289621504 Feb 14 20:44 base.dmp
drwxr-xr-x  2 olegon users      	9 Jan 27  1997 quake (24080K)
drwxr-xr-x 24 olegon users     	35 Jun  3  2010 RTL8139 (2617K)
произвольные доки, увы, с картинками, два исошника, которые я когда-то снял со своей лицензионной винды, впаренной мне с компом, дамп базы, каталог от игры и каталог с драйверами. Пересчитывалось это все на i7/32Gb

Участники:
Цитата:
7-Zip [64] 9.20 Copyright (c) 1999-2010 Igor Pavlov 2010-11-18
p7zip Version 9.20 (locale=ru_RU.UTF-8,Utf16=on,HugeFiles=on,8 CPUs)
Цитата:
lrzip version 0.614
Copyright (C) Con Kolivas 2006-2012
Based on rzip Copyright (C) Andrew Tridgell 1998-2003
Цитата:
xz (XZ Utils) 5.0.5
liblzma 5.0.5
Цитата:
bzip2, a block-sorting file compressor. Version 1.0.6, 6-Sept-2010.
Цитата:
gzip 1.5
Copyright (C) 2007, 2010, 2011 Free Software Foundation, Inc.
Copyright (C) 1993 Jean-loup Gailly.
Начинаем тестирование с самого большого файлика, поскольку я помню, чем это кончилось в прошлый раз по времени...
Код:
time 7z a -mx=9 -ms=on -t7z -m0=lzma2 base base.dmp
real	2m58.885s
user	15m18.307s
sys 	0m3.088s
-rw-r--r-- 1 root root 96407121 Feb 21 13:43 base.7z
Код:
time lrzip -z base.dmp
Output filename is: base.dmp.lrz
base.dmp - Compression Ratio: 16.649. Average Compression Speed:  5.320MB/s.0%  7:100%  8:100%  9:100%
Total time: 00:03:51.40
real	3m51.401s
user	24m11.802s
sys 	0m4.494s
-rw-r--r-- 1 olegon users 77461045 Feb 21 13:53 base.dmp.lrz
очень умный вывод, чанки, процессы, цифирки :) И радующий глаз результат.
Код:
time xz -z -9 -e base.dmp
real	28m47.713s
user	28m43.670s
sys 	0m1.636s
-rw-r--r-- 1 olegon users 89780440 Feb 21 13:53 base.dmp.xz
на редкость молчаливый товарищ… При его времени работы…
Код:
time bzip2 -z -9 base.dmp
real	2m24.043s
user	2m23.486s
sys 	0m0.245s
-rw-r--r-- 1 olegon users 125324586 Feb 14 20:44 base.dmp.bz2
Код:
time gzip -9 base.dmp
real	3m42.607s
user	3m41.787s
sys 	0m0.366s
-rw-r--r-- 1 olegon users 169210933 Feb 14 20:44 base.dmp.gz
По итогам сравнения сжатия дампа безоговорочную победу одерживает lrzip, хотя на машинах с небольшим количеством ядер и для распространения файлов в убогую Windows (на маках lrzip есть) можно предпочесть и 7z. Из-за зверского времени работы xz я снял его с дистанции по большим файлам.
Продолжаем жать исошники, доки и прочее барахло
Код:
time lrzip -z 1.iso
Output filename is: 1.iso.lrz
1.iso - Compression Ratio: 1.107. Average Compression Speed:  2.638MB/s.6:100%  7:100%  8:100%  9:100%
Total time: 00:03:51.57
real	3m51.570s
user	23m37.443s
sys 	0m4.301s
-rw-r--r-- 1 olegon users 579658651 Feb 21 16:00 1.iso.lrz
Код:
time 7z a -mx=9 -ms=on -t7z -m0=lzma2 1 1.iso
real	1m14.621s
user	4m38.545s
sys 	0m2.386s
-rw-r--r-- 1 olegon users 581829860 Feb 21 16:03 1.7z
Код:
time bzip2 -z -9 1.iso
real	1m16.952s
user	1m16.408s
sys 	0m0.212s
-rw-r--r-- 1 olegon users 593268431 May 27  2009 1.iso.bz2
Код:
time lrzip -z 2.iso
real	1m44.880s
user	10m51.536s
sys 	0m2.581s
-rw-r--r-- 1 olegon users 319962451 Feb 21 16:30 2.iso.lrz
Код:
time 7z a -mx=9 -ms=on -t7z -m0=lzma2 2 2.iso
real	0m58.173s
user	2m11.326s
sys 	0m1.550s
-rw-r--r-- 1 olegon users 324377451 Feb 21 16:32 2.7z
Код:
time bzip2 -z -9 2.iso
real	0m43.434s
user	0m42.972s
sys 	0m0.127s
-rw-r--r-- 1 olegon users 334209824 Jan  9  2012 2.iso.bz2
Код:
time lrzip -z 1.doc
real	0m0.673s
user	0m0.427s
sys 	0m0.209s
-rw-r--r-- 1 olegon users 259871 Feb 21 16:42 1.doc.lrz
Код:
time 7z a -mx=9 -ms=on -t7z -m0=lzma2 1d 1.doc
real	0m0.057s
user	0m0.079s
sys 	0m0.005s
-rw-r--r-- 1 olegon users 258307 Feb 21 16:43 1d.7z
Код:
time bzip2 -z -9 1.doc
real	0m0.042s
user	0m0.042s
sys 	0m0.001s
-rw-r--r-- 1 olegon users 277768 Jun 13  2006 1.doc.bz2
Код:
time lrzip -z 2.doc
real	0m2.910s
user	0m2.715s
sys 	0m0.246s
-rw-rw-rw- 1 olegon users 2038728 Feb 21 16:44 2.doc.lrz
Код:
time 7z a -mx=9 -ms=on -t7z -m0=lzma2 2d 2.doc
real	0m0.268s
user	0m0.404s
sys 	0m0.010s
-rw-r--r-- 1 olegon users 2058542 Feb 21 16:45 2d.7z
Код:
time bzip2 -z -9 2.doc
real	0m0.266s
user	0m0.260s
sys 	0m0.006s
-rw-rw-rw- 1 olegon users 2113446 Jul 28  2011 2.doc.bz2
Код:
time lrztar -z quake
real	0m14.299s
user	0m18.900s
sys 	0m0.325s
-rw-r--r-- 1 olegon users 24392805 Feb 21 16:49 quake.tar.lrz
Код:
time 7z a -mx=9 -ms=on -t7z -m0=lzma2 quake quake
real	0m2.800s
user	0m4.628s
sys 	0m0.307s
-rw-r--r-- 1 olegon users 24390803 Feb 21 16:50 quake.7z
Код:
time 7z a -mx=9 -ms=on -t7z -m0=lzma2 RTL8139 RTL8139
real	0m0.554s
user	0m0.623s
sys 	0m0.101s
-rw-r--r-- 1 olegon users 1026609 Feb 21 16:51 RTL8139.7z
Код:
time lrztar -z RTL8139
real	0m2.351s
user	0m2.235s
sys 	0m0.206s
-rw-r--r-- 1 olegon users 1029391 Feb 21 16:51 RTL8139.tar.lrz
Видно, что на небольших файлах 7z возвращает себе свое преимущество. Но lrzip и был описан для использования на больших файлах. Помимо ZPAQ, которым я все время и пользовался при сжатии, в lrzip есть и lzma, и bzip2, и gzip и lzo. На директории преимущество незначительное, но у 7z есть недостаток - он не сохраняет владельцев файлов. Включенная в lrzip tar-обертка для архивирования директорий радует, но и обладает недостатком. По крайней мере я не нашел ключа для исключения директорий, что есть в таре. Это сильно подбивает удобство пользования, поскольку я уже приглядывал его для архивирования stage системы. А так к tar можно прицепить практически любой архиватор.
Ради интереса потестил на дампе:
Код:
time lrzip -L 9 -l base.dmp
real	1m39.468s
user	1m37.803s
sys	0m2.730s
-rw-r--r-- 1 olegon users 283969127 Feb 22 09:20 base.dmp.lrz
видно, что на LZO архивирование вообще не параллелится и, судя по всему, скорость ограничивается винтом при минимальной компрессии.
Код:
time lrzip -L 9 base.dmp
real	3m20.582s
user	15m50.137s
sys	0m6.671s
-rw-r--r-- 1 olegon users 104928041 Feb 22 09:39 base.dmp.lrz
LZMA слабенько выступил... Про bzip2 и gzip я даже и выяснять не стал.

В общем, резюмирую. 7z по прежнему на первом месте. Для хранения файлов хранилища, например, передачи файлов юзерам я все же буду предпочитать его. Для передачи файлов админам и хранения на безопасных хранилищах больших файлов - lrzip для меня стал открытием. Вряд ли что-то брутфорсное уже написано, под недоос только с костылями, жмет великолепно... В общем, вот такая вот реклама.
Обращаю внимание на тему: 7z, максимальная степень сжатия, где предлагаю посоревноваться опциями 7z.
Спрашивайте, если что еще потестить надо...
 
 
Опции темы



Часовой пояс GMT +3, время: 19:06.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.