Ich bin gerade etwas sprachlos. Ich habe hier ~35GB JSON-Daten. Diese Daten sind das Ergebnis des crawlens einer öffentlich verfügbaren API alle fünf Minuten für ein Jahr. Die Antworten der API haben eine durchschnittliche Größe von ~330KB und unterschieden sich oft nur im Zeitstempel oder zusätzlich in kleineren Details. Das sind also durchaus viele redundante Daten. Initial habe ich jede Antwort mit gzip komprimiert und als einzelne Datei gespeichert. Im Vergleich zur unkomprimierten Größe hat das zwar nur 2GB Speicherplatz benötigt, aber ich war unglücklich mit der großen Anzahl an Dateien und wollte die Daten gerne noch etwas besser komprimiert haben, so dass ich sie jetzt zu einer einzelnen JSONL-Datei zusammengeführt und diese anschließend mit Zstandard (mit Kompressionstufe 19) komprimiert habe. Anschließend habe ich mir erst mal verwundert die Augen gerieben und meinen Fehler gesucht, denn das Ergebnis war nur noch 5,3MB groß. Megabyte, nicht Gigabyte! Aber offensichtlich hat das alles seine Richtigkeit: Dekomprimiere ich die 5,3MB große Datei, bekomme ich alle 35GB an JSONL-Daten wieder. Das nenne ich mal effiziente Kompression.
Previous Post: Machine learning