Porównanie kompresji compress, gzip, bzip2, xz, lzip, lzma, lzop

W poniższym artykule przedstawiam wyniki testów wybranych programów do kompresji i/lub archiwizacji plików. Przedstawione są wyniki testów uzyskane na rużnych zbiorach danych i rużnorodym sprzęcie. Zestawiono wyniki testow m.in. tar, compress, gzip, bzip2, xz, lzip, lzma, lzop, 7-zip (7z).

Na chwilę obecną wydaje się że wszędzie tam gdzie był stosowany compress można go zastąpić lzop, uzyskując mniejsze pliki w krótszym czasie. Warto też rozważyć zastąpienie gzip’a przez lzop – dostaniemy wtedy nieznacznie większych rozmiarów archiwa, ale w kilku-krotnie krótszym czasie. Natomiast jeżli chcemy uzyskać jak najmniejsze archiwym bez względu na czas kompresji najlepsze wyniki uzyskuja bzip2, lzip i lzma, ale jest to kosztem kilkukrotnie większego czasu kompresji niż przy zastosowaniu gzip, za co dostajemy o pare procent mniejsze archiwa.

Na pierwszy ogień poszła kompresja backupu linuxa za pomocą gzip, bzip2 i lzma, a test wykonano na mszynie o konfiguracji sprzętowej nr.1

id cp -a tartar+compress tar+gziptar+bzip2 tar+xz tar+lzip tar+lzma tar+lzop 7-zip (7z)
1Atimeuser0:02.889s 3:51.216s12:02.958s53:37.116s115:22.385s150m19.642s114:39.205s2m35.821s
sys0:38.378s 1:19.494s 0:39.007s 0:48.558s 1:20.971s 0m52.174s 1:27.065s0m47.442s
user+sys0:41.267s 5:10.710s12:41.965s54:25.674s116:43.356s151.11.816s116:06.270s3m23.263s
size 6.74 GB 6.45 GB 6.18 GB 3.59 GB 3.46 GB 2.90 GB 2.92 GB 2.91 GB 4.15 GB
compr. ratio 95.7 % 91.7 % 53.3 % 51.3 % 43.0 % 43.3 % 43.2 % 61.6 %
1Btimeuser0:04.254s0m09.222s 17m38.734s30m40.160s 7m17.420s
sys2:07.076s1m58.744s 4m09.271s 1m48.362s 2m9.408s
user+sys2:11.330s2m07.966s 21m48.005s32m28.522s 9m26.828s
size31.41 GB30.97 GB 16.43 GB 9.28 GB 10.69 GB
compr. ratio 98.6 % 52.3 % 29.5 % 34.0 %

Konfigracje sprzetowe maszyn testowych:

idliczba CPU CPURAM dysk
1 2Intel Xeon E5310 @ 1.60GHz8 GB2TB WD Black lub Segte Constelation ES.2 lub 3

Oczywiscie zestwaienie nie jest jeszcze kompletne i bedzie uzupelniane

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *