Jaka jest różnica między gzip i compress? Jakie są zalety korzystania z funkcji kompresji. Widziałem różnicę rozmiaru w skompresowanym pliku, ale poza tym jakie są główne zalety?

Komentarze

  • compress to technologia lat 80-tych, gzip 90-tych, bzip2 pierwsza dekada XXI wieku, xz 10s.

Odpowiedź

Kompresja jest znacznie starsza (1983) i oparta na algorytmie kompresji LZW.

Gzip został napisany we wczesnych latach 90-tych i jest oparty na algorytmie DEFLATE.

Ogólnie Compress będzie działał szybciej i zużywał mniej pamięci, ale gzip generalnie osiąga znacznie wyższy poziom kompresji .

Pojawiły się również problemy patentowe z LZW, które Unisys zaczął wprowadzać na początku lat 90-tych (dotyczyło to głównie formatu GIF, który również używał kompresji LZW). Programiści gzip zamierzali opracować oprogramowanie do kompresji ogólnego przeznaczenia, które nie było obciążone patentami.

Odpowiedź

TL; DR: użyj gzip

Przeprowadziłem kilka testów, aby porównać poziom kompresji, czas kompresji i czas dekompresji gzip, compress i xz:

File size | Percentage of original size | | Time to compress | | | Time to decompress | | | | Method | | | | | Filename 425M 100% - - - Germany_hessen_europe_2.obf 348M 82% 16.8 3.24 compress test.Z 260M 61% 11.8 4.18 gzip -1 test.1.gz 246M 58% n/a 3.88 gzip -9 test.9.gz 226M 53% 69.6 15.6 xz -1 test.1.xz 

Plik jest mapą niemieckiego kraju związkowego, która kompresuje całkiem nieźle (o 50% przy odrobinie wysiłku).

Krótko mówiąc:

  • compress jest wolniejsze niż gzip -1 podczas kompresji,
  • kompresuje tylko o połowę, ale
  • jest o 29% szybszy podczas dekompresji.

Metoda testowa: Użyłem bezczynnego dysku SSD i I / O nie było wąskim gardłem. Użyłem time cat file | compression > out do kompresji i time cat file | decompression > /dev/null do czasów dekompresji. Testy dla gzip -1 i compress zostały przeprowadzone dwukrotnie (zarówno kompresja, jak i dekompresja) i dały bardzo podobne wyniki, z których uzyskałem średnią. Czas kompresji gzip -9 po prostu zapomniałem zmierzyć, ale ponieważ -1 już kompresuje znacznie lepiej niż compress Nie sądzę, żeby to wiele dodało, żeby wrócić i zrobić to.

Dodaj komentarz

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