Datenkompression (auch Datenverdichtung oder Quellcodierung genannt) ist der Prozess, Informationen so umzukodieren, dass sie weniger Speicherplatz belegen oder schneller übertragen werden können. Sie ist eine der Grundtechniken der Informationstheorie: Die meisten realen Daten enthalten Redundanz (Wiederholungen, statistische Regelmäßigkeiten), die genutzt werden kann, um die Darstellung zu verkürzen.
Grundprinzip: Redundanz entfernen
Ein Text wie AAAAABBBBB lässt sich als 5A5B notieren (Lauflängencodierung). Ähnlich arbeiten leistungsfähigere Verfahren: Sie ersetzen häufige Zeichen durch kurze Codes (Entropiecodierung) oder verweisen auf bereits übertragene Textstellen (Wörterbuchverfahren). Das Ziel ist immer, die durchschnittliche Codierungslänge an die tatsächliche Informationsmenge (Entropie) anzunähern.
Zwei große Klassen
- Verlustfreie Kompression: Die Originaldaten lassen sich bitgenau rekonstruieren. Ideal für Text, Code, Archive und Datenbanken (z. B. ZIP, PNG, FLAC).
- Verlustbehaftete Kompression: Es werden bewusst schwer wahrnehmbare Details verworfen, um deutlich höhere Kompressionsraten zu erreichen. Typisch für Bilder, Audio und Video (z. B. JPEG, MP3, H.264).
Anwendungen im Alltag
Kompression steckt überall: ZIP-Archive, Bilder im Web, Musik-Streaming, Videokonferenzen, aber auch HTTP-Übertragungen (gzip/Brotli) und Datenbanksicherungen. Ohne sie wären Webseiten, Streaming-Dienste und Speichersysteme um ein Vielfaches langsamer und teurer.
Verwandte Grundlagen: Verlustfreie Kompression, Verlustbehaftete Kompression, Modellkompression, Codec.