Daten komprimieren
10 Antworten zur Frage
Videos zum Thema
Daten Komprimieren
Dazu muss man wissen wie ein Kompressionsalgorhythmus funktioniert:
Nehme man z.b. einen Fließtext oder Serverlogfile, darin befindet sich viel viel Lust, z.b. Leerzeichen etc.
Nun je nach Form der Kompression werden verschiedene Aspekte zusammengefasst - komprimiert und anschließend mit einem Hashwert abgesichert.
Also folgende Gründe könnten vorliegen:
Die Daten die du komprimieren willst haben eine zu große Datendichte
oder
Du hast die falsche Option gewählt.
mann ^^Ich meine LUFT , das andere schadet zwar nicht ist hier aber fehl am Platze
Beim Komprimieren werden sogenannte Redundanzen entfernt, also Daten, die sich aus den anderen Daten wieder rekonstruieren lassen.
Eine sehr einfache Komprimierung verwenden z.B. Faxe.
Ein Fax ist ein Schwarzweißbild, es besteht also nur aus weißen und schwarzen Bildpunkten. Dieses Bild wird zeilenweise abgetastet und es entstehen Folgen von Angaben der Art:
Weiß, Weiß, Weiß, Weiß, Weiß, Schwarz, Schwarz, Schwarz, Schwarz, Schwarz, Schwarz, Weiß, Schwarz, Schwarz, Schwarz.
Jetzt kann man das gleiche viel kürzer hinschreiben:
5x Weiß, 6x Schwarz, 1x Weiß, 3x Schwarz.
Das ist nichts anderes als Komprimierung.
Ich kann das noch weiter komprimieren, indem ich nur noch die Zahl und W für Weiß bzw. S für Schwarz schreibe.
5W, 6S, 1W, 3S
Auch das kann ich verkürzen, indem ich die Kommas und Leerzeichen weglasse:
5W6S1W3S
Und nun spar ich mir auch noch die W und S, in dem ich z.B. festlege, dass als erster Bildpunkt immer ein weißer Bildpunkt auftaucht. Falls doch ein Fax mal mit einem schwarzen Bildpunkt anfängt, schreibe ich eben "Null Weiß" am Anfang. Jetzt wird aus unserer Zeile
Weiß, Weiß, Weiß, Weiß, Weiß, Schwarz, Schwarz, Schwarz, Schwarz, Schwarz, Schwarz, Weiß, Schwarz, Schwarz, Schwarz
nur noch
5613
Faxe werden tatsächlich so komprimiert, indem man statt der weißen und schwarzen Bildpunkte die Zahl der weißen und schwarzen Bildpunkte im Wechsel angibt - ein sehr einfaches, aber für die meisten Faxe ein sehr effektives Mittel.
So etwas funktioniert auch bei vielen Daten: Serverlogfiles z.B. enthalten viele Wiederholungen, weil immer wieder ähnliche Meldungen hineingeschrieben werden: "IP 1.2.3.4 greift auf /index.html zu", "IP 6.7.8.9 greift auf /index.html zu" und so weiter und so fort.
Computerprogramme dagegen lassen sich nicht so einfach komprimieren. Denn dort entfernt bereits der Programmierer diese Dopplungen - statt 50 mal hintereinander den gleichen Befehl zu schreiben, schreibt er eine Schleife "FOREACH i IN {DO BEFEHL}".
Noch schwieriger ist es bei Daten, die bereits komprimiert vorliegen: Bilder, Filme und Musik werden als komprimierte Dateien gespeichert, weil sie sonst einfach viel zu groß wären. Eine normale Musik-CD hat 74 min Laufzeit und enthält 700 MByte an Daten. Jede Minute Laufzeit kostet also fast 10 MByte. Ein MP3 der gleichen Musik dagegen ist nur noch 1 MByte groß - hier ist auf ein Zehntel komprimiert worden.
Solche Dateien lassen sich im Prinzip nicht mehr weiter komprimieren. Also wirst du bei Programmen, Musik, Bildern und Filmen einfach keinen Erfolg erzielen, wenn du sie weiter komprimieren willst.
Also wenn Du das selbst getippt und ausgedacht hast dann ist das eine perfekte Antwort.
Na sicher hab ich das selbst geschrieben. Die Fax-Komprimierung nennt sich übrigens Lauflängenkodierung , falls du mehr dazu nachlesen willst
Lauflängenkodierung – Wikipedia
Eine der besten Antworten, die ich hier bisher gesehen habe. Leider kann ich dir nicht mehr geben, als einen Klick auf SEHR GUT.
Wohlgemerkt kann man Quellcode-Dateien ("FOREACH.") schon noch ziemlich stark komprimieren, nur binäre ausführbare Dateien nicht mehr.
Meine auch mal gehört zu haben das es am Dateityp liegen kann, wenn es eine schon komprimierte Datei ist, wie z.b. eine.jpg oder.mpg Datei kann diese nicht mehr stark verkleinert werden.
Die Daten die du komprimieren willst haben eine zu große Datendichte
. Nachmacher
Wollt das nur nochmal ausführen. *hust* hab deinen Beitrag nur überflogen tut mir Leid
Macht nichts, hättest aber ruhig mal auf Gute Antwort klicken können