Verbessert sich das gz-Kompressionsverhältnis im Laufe der Zeit?

7

Ich habe einen Prozess, der einen Strom von Millionen sehr ähnlicher Zeilen erzeugt. Ich leite das an gz. Verbessert sich das Komprimierungsverhältnis in einem solchen Setup mit der Zeit? Dh ist das Komprimierungsverhältnis für 1 Million ähnliche Leitungen besser als etwa 10.000?

Gx1sptDTDa
quelle

Antworten:

8

Es tut bis zu einem gewissen Punkt und dies gleicht sich aus. Die Komprimierungsalgorithmen haben eine Einschränkung hinsichtlich der Größe der Blöcke, die sie betrachten ( bzip2) und / oder der Tabellen, die sie mit Informationen zu vorherigen Mustern ( gzip) führen.

Im Fall von gzip werden alte Einträge herausgeschoben, sobald eine Tabelle voll ist, und die Komprimierung wird nicht weiter verbessert. Abhängig von Ihrem Komprimierungsqualitätsfaktor ( -0bis -9) und der Wiederholbarkeit Ihrer Eingabe kann dieses Auffüllen natürlich eine Weile dauern, und Sie bemerken es möglicherweise nicht.

Anthon
quelle
4

Nicht viel. Die "Entfernung", die der verwendete DEFLATE-Algorithmus zurücklegt, gzipist auf 32 KB begrenzt.

Wikipedia Link -> DEFLATE

Es lohnt sich, einen Vergleich mit den verschiedenen gzipKomprimierungsstufen anzustellen und auch bzip2 und xz zu berücksichtigen .

Steve
quelle