Was ist der Unterschied zwischen gzip und compress? Was sind die Vorteile der Komprimierungsfunktion? Ich konnte einen Größenunterschied in der komprimierten Datei feststellen, aber abgesehen davon, was sind die Hauptvorteile?
Kommentare
-
compress
ist 80er-Jahre-Technologie,gzip
90er-Jahre,bzip2
00s,xz
10s.
Antwort
Die Komprimierung ist erheblich älter (1983) und basiert auf dem LZW-Komprimierungsalgorithmus.
Gzip wurde in den frühen 90ern geschrieben und basiert auf dem DEFLATE-Algorithmus.
Im Allgemeinen wird Compress schneller ausgeführt und benötigt weniger Speicher, aber gzip erreicht im Allgemeinen deutlich höhere Komprimierungsstufen
Es gab auch Patentprobleme mit LZW, die Unisys Anfang der 90er Jahre durchzusetzen begann (dies war hauptsächlich auf das GIF-Format ausgerichtet, das auch die LZW-Komprimierung verwendete). Die gzip-Entwickler beabsichtigten, eine universelle Komprimierungssoftware zu entwickeln, die nicht durch Patente belastet war.
Antwort
TL; DR: Verwenden Sie gzip
Ich habe einige Tests durchgeführt, um die Komprimierungsstufe, Komprimierungszeit und Dekomprimierungszeit von gzip
, und 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
Die Datei ist eine Karte eines deutschen Staates, die komprimiert wird ziemlich gut (um 50% mit ein wenig Aufwand).
Kurz gesagt:
-
compress
ist langsamer alsgzip -1
beim Komprimieren, - komprimiert nur die Hälfte, aber
- ist beim Dekomprimieren 29% schneller.
Testmethode: Ich habe eine inaktive SSD verwendet und E / A war nicht der Engpass. Ich habe time cat file | compression > out
für die Komprimierung und time cat file | decompression > /dev/null
für die Dekomprimierungszeiten verwendet. Die Tests für gzip -1
und compress
wurden zweimal ausgeführt (sowohl komprimieren als auch dekomprimieren) und ergaben sehr ähnliche Ergebnisse, von denen ich den Durchschnitt nahm. Die gzip -9
Komprimierungszeit habe ich einfach vergessen zu messen, aber da -1
bereits viel besser komprimiert als compress
Ich glaube nicht, dass es viel hinzufügen würde, zurück zu gehen und es zu tun.