Datenkompression
Datenkomprimierung ist eine Reihe von Schritten zum Packen von Daten auf einen kleineren Raum, wobei die Originaldaten wieder sichtbar sind. Die Komprimierung ist ein zweiseitiger Prozess: Ein Komprimierungsalgorithmus kann verwendet werden, um ein Datenpaket kleiner zu machen, aber er kann auch in umgekehrter Richtung ausgeführt werden, um das Paket in seine ursprüngliche Form zu dekomprimieren. Datenkompression ist nützlich bei der Datenverarbeitung, um Plattenplatz zu sparen oder um die Bandbreite zu verringern, die beim Senden von Daten (z.B. über das Internet) verwendet wird.
Verlustfreie Komprimierung
Bei der verlustfreien Komprimierung werden die Daten so gepackt, dass das komprimierte Paket dekomprimiert werden kann und die Daten genau so herausgezogen werden können, wie sie hineingegangen sind. Dies ist für Computerprogramme und Archive sehr wichtig, da selbst eine sehr kleine Änderung in einem Computerprogramm dieses unbrauchbar macht.
Diese Art der Komprimierung reduziert den Platzverbrauch in einem Datenstück. Wenn Sie z.B. ein Datenpaket erhalten, das "AAAAABBBB" enthält, können Sie es in "5A4B" komprimieren, das dieselbe Bedeutung hat, aber weniger Platz beansprucht. Diese Art der Komprimierung wird als "Lauflängencodierung" bezeichnet, da Sie festlegen, wie lang die "Lauflänge" eines Zeichens ist. Im obigen Beispiel gibt es zwei Läufe: einen Lauf von 5 A's und einen weiteren von 4 B's.
Das Problem mit der Lauflängenkodierung ist, dass sie nur bei langen Datenstücken mit demselben Datenwert funktioniert. Wenn Sie ein Paket mit "ABBAABAAB" erhalten, kann das in "1A2B2A1B2A1B" komprimiert werden; aber das ist länger als das Original! In diesem Fall gibt es eine andere Methode, die verwendet werden kann: Überprüfen, wie oft ein bestimmter Wert im gesamten Datenpaket auftaucht. Dies wird oft als Frequenzkompression bezeichnet.
Die häufigste Art der Frequenzkompression wird Huffman-Kodierung genannt, nach dem Wissenschaftler, der die Idee dazu hatte. Der Grundplan besteht darin, jedem einzelnen Wert in einem Datenstück einen Code zu geben: Werte, die ständig auftauchen, erhalten kürzere Codes, und Werte, die nur ein- oder zweimal auftauchen, erhalten längere Codes.
Beispiele für verlustfreie Kompression
Verlustbehaftete Komprimierung
Bei einigen Datentypen kann die verlustbehaftete Komprimierung viel weiter gehen; dies ist meistens bei Mediendateien wie Musik und Bildern der Fall. Bei der verlustbehafteten Komprimierung geht ein Teil der Daten verloren, so dass es weniger zu speichern gibt. Je nachdem, welche Informationen verloren gehen, merken die Menschen nicht, dass sie fehlen. Infolgedessen können sie einfach aus den Daten entfernt werden.
Das funktioniert natürlich nicht für Computerprogramme und andere solche Daten, bei denen jedes Stück wichtig ist; Teile eines Computerprogramms wegzuwerfen ist im Allgemeinen ungesund für das Programm.
Beispiele für verlustbehaftete Kompression
- Bilder: JPEG
- Ton: MP3, Windows Media
- Video: MPEG, DivX, Windows Video
Fragen und Antworten
F: Was ist Datenkompression?
A: Datenkomprimierung bedeutet, dass Daten in einen kleineren Raum gepackt werden, wobei der Zugriff auf die ursprünglichen Daten weiterhin möglich ist.
F: Welchen Zweck hat die Datenkompression in der Informatik?
A: Die Datenkomprimierung ist in der Informatik nützlich, um Speicherplatz zu sparen und die für die Übertragung von Daten über das Internet erforderliche Bandbreite zu verringern.
F: Ist die Datenkompression ein einseitiger Prozess?
A: Nein, Datenkompression ist ein zweiseitiger Prozess. Sie kann verwendet werden, um Datenpakete zu verkleinern, aber auch in umgekehrter Richtung, um das Paket wieder in seine ursprüngliche Form zu dekomprimieren.
F: Welche Vorteile bietet die Datenkomprimierung bei der Übertragung von Daten über das Internet?
A: Durch die Komprimierung von Daten kann die für die Übertragung der Daten erforderliche Bandbreite verringert werden, was wiederum die für die Übertragung der Daten erforderliche Zeit verkürzt.
F: Warum ist es wichtig, dass die Originaldaten nach der Komprimierung noch sichtbar sind?
A: Wenn auf die Originaldaten nach der Komprimierung nicht mehr zugegriffen werden kann, sind die komprimierten Daten nur noch von begrenztem Nutzen.
F: Kann die Datenkomprimierung dazu beitragen, die Übertragung großer Dateien zu beschleunigen?
A: Ja, die Datenkomprimierung kann die Übertragung großer Dateien beschleunigen, da kleinere Dateien weniger Zeit für die Übertragung benötigen.
F: Was ist ein Komprimierungsalgorithmus?
A: Ein Komprimierungsalgorithmus ist eine Reihe von Schritten zur Komprimierung von Daten auf kleinerem Raum, wobei die ursprünglichen Daten wieder angezeigt werden können.