Jaký je rozdíl mezi gzip a kompresí? Jaké jsou výhody použití funkce komprese. V komprimovaném souboru jsem viděl rozdíl ve velikosti, ale kromě toho, jaké jsou hlavní výhody?

Komentáře

  • compress je technologie 80. let, gzip 90. roky, bzip2 00 s, xz 10 s.

Odpověď

Komprese je výrazně starší (1983) a je založena na kompresním algoritmu LZW.

Gzip byl napsán na počátku 90. let a je založen na algoritmu DEFLATE.

Obecně platí, že komprese bude běžet rychleji a bude používat méně paměti, ale gzip obecně dosáhne výrazně vyšších úrovní komprese .

U LZW došlo také k patentovým problémům, které Unisys začal prosazovat na počátku 90. let (toto bylo většinou zaměřeno na formát GIF, který také používal kompresi LZW). Vývojáři gzip zamýšleli vyvinout univerzální kompresní software, který nebyl zatěžován patenty.

Odpověď

TL; DR: použijte gzip

Provedl jsem několik testů pro srovnání úrovně komprese, doby komprese a doby dekomprese gzip, compress a 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 

Soubor je mapa německého státu, která komprimuje docela dobře (o 50% s trochou úsilí).

Stručně:

  • compress je pomalejší než gzip -1 při kompresi,
  • komprimuje také jen polovinu, ale
  • je při dekompresi rychlejší o 29%.

Testovací metoda: Použil jsem nečinný disk SSD a I / O nebylo překážkou. Použil jsem time cat file | compression > out pro kompresi a time cat file | decompression > /dev/null pro dekompresní časy. Testy pro gzip -1 a compress byly spuštěny dvakrát (komprimovat i dekomprimovat) a poskytly velmi podobné výsledky, z nichž jsem vzal průměr. Čas komprese gzip -9 jsem jednoduše zapomněl měřit, ale protože -1 již komprimuje mnohem lépe než compress Nemyslím si, že by to hodně přidalo, kdybychom se vrátili a udělali to.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *