Verlustbehaftet werden z.B. die Dateiformate JPEG oder MP3 komprimiert, verlustlos z.B. PNG oder FLAC.
Zum Packen oder Archivieren von Daten braucht es natürlich verlustfreie Algorithmen, am besten mit Prüfsummen (CRC) zur Sicherung der Integrität.
Wohl am bekanntesten ist das ZIP-Archivformat, das auf dem DEFLATE-Algorithmus basiert (LZ77 + Huffman) und unter Windows üblich ist.
Ebenfalls beliebt ist auch (immernoch) das RAR-Format, bei dem die Daten "am Stück" komprimiert werden (etwa mit ZIP), was zu höheren Kompressionsraten führen kann.
In der Unixwelt (Linux) gibt es etwas ähnliches, das TAR-Format sammelt Daten erst einmal in einer Datei, die dann effektiv verkleinert werden kann (durch Einsparen von Redundanzen).
Auf dem DEFLATE-Algorithmus basieren neben ZIP auch gzip und zlib (PNG, HTTP), wodurch diese in etwa die gleichen Komprimierungsraten und -zeiten aufweisen (bei gleicher Kompressionsstufe).
Besser als ZIP und gzip komprimiert bzip2 (BWT-Algorithmus), es dauert damit aber auch länger, da mehr Rechenkapazität nötig ist und es wird mehr Arbeitsspeicher benötigt (vgl. "Am-Stück"-Logik).
Der Vorteil von XZ ist eine bestmögliche Komprimierung, und das mit Metadaten; LZMA2 ist ideal für Dateien, die sich sonst nicht mehr komprimieren lassen würden. Die Komprimierungszeiten und der RAM-Verbrauch sind aber auch entsprechend hoch (je nach Stufe).
Eine *.tar.xz lässt sich mit tar -cJf erzeugen.
XZ-Dateien lassen sich mit 7-Zip auch unter Windows öffnen und erzeugen.
XZ-Dateien lassen sich mit 7-Zip auch unter Windows öffnen und erzeugen.
Interessante Links:
Erwähnt sein sollen zum Schluss auch noch zwei interessante Algorithmen:
Keine Kommentare:
Kommentar veröffentlichen
Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.