www.wikidata.de-de.nina.az
Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen beispielsweise Einzelnachweisen ausgestattet Angaben ohne ausreichenden Beleg konnten demnachst entfernt werden Bitte hilf Wikipedia indem du die Angaben recherchierst und gute Belege einfugst Delta Kodierung oder auch Differenzspeicherung ist ein Verfahren in der Informationstechnik um Speicherbedarf von mehreren sehr ahnlichen Datensatzen dadurch zu verringern dass ein Datensatz als Ausgangspunkt genommen wird und alle weiteren nur als Differenz zu diesem Ausgangspunkt beschrieben werden Die Veranderungen werden Deltas oder Diffs genannt Als Verfahren zur Datenkompression verringern sie den Speicherbedarf und die Menge der uber Datenleitungen zu ubertragenden Daten Bandbreitenbedarf bei der Verarbeitung korrelierter A 1 Daten wie zum Beispiel von Daten die in mehreren Versionen vorliegen Inhaltsverzeichnis 1 Funktion 1 1 Beispiel 2 Implementierung 2 1 Herstellen der gewunschten Version 2 2 Anwendungsfalle 2 2 1 Backup Systeme 2 2 2 Git 3 Eignung 4 Siehe auch 5 AnmerkungenFunktion BearbeitenAusgangspunkt ist ein Datensatz der in zwei oder mehreren Versionen vorliegt wie z B der Quelltext eines Programms der bei jedem Entwicklungsschritt gespeichert wird So haufen sich mit jedem Entwicklungsschritt sehr ahnliche Datensatze an die sich aber vielleicht nur geringfugig unterscheiden Statt also ganze Entwicklungsschritte zu speichern werden nur ihre Anderungen gespeichert Beispiel Bearbeiten Von einem Text gibt es zwei Versionen die beide gespeichert werden sollen Das ist ein Beispielsatz Das ist ein anderer Beispielsatz Um den Informationsgehalt des zweiten Satzes zu speichern muss dieser nicht komplett gespeichert werden Es ist ausreichend wenn der erste Satz vollstandig und fur den zweiten Satz nur die Anweisung Fuge nach dem dritten Wort anderer ein aufbewahrt wird Damit ist nur der Unterschied zum ersten Satz gespeichert was erhebliche Datenersparnis mit sich bringen kann Implementierung BearbeitenEs gibt zwei Methoden fur die Delta Speicherung Der ursprungliche Text bleibt in Originalform erhalten z B in einer Datei mein buch erster entwurf txt und es werden nur die Anderungen zur jeweils nachstneueren Version aufgezeichnet z B in einer Datei mein buch erster entwurf vorwartsdeltas oder der jeweils neueste Text wird abgespeichert Datei ganzneu txt und die Anderungen zu den vorherigen Versionen werden festgehalten Datei ganzneu ruckwartsdeltas Ein gutes Beispiel hierfur ist die Versionsgeschichte in der Wikipedia wie sie sich den Lesenden darstellt die neueste Version z B der Artikel Delta Kodierung ist komplett vorhanden Tab bzw Reiter Lesen wahrend fruhere Versionen uber den Reiter Versionsgeschichte zuganglich sind und auch jeweils die Unterschiede Deltas von Version zu Version eingesehen werden konnen Die Vor bzw Ruckwartsanderungen werden in Differenzspeicherungs Datensatzen festgehalten Ein Datensatz enthalt fur jeweils genau eine Anderung diejenige Position im Text von der an die Anderung beginnt und die Information ob eine Anzahl von Zeichen entfernt oder eingefugt werden soll in letzterem Fall auch noch welche Zeichen eingefugt werden sollen Zwischen zwei unmittelbar aufeinanderfolgenden Versionen existieren genau so viele Anderungs Datensatze wie es Unterschiede zwischen den beiden Versionen gibt Zur Speicherung der Anderungs Datensatze gibt es unterschiedliche Strategien Die einfachste ist alle Anderungen uber alle Versionen hinweg gemeinsam in einer Anderungs Datei zu speichern mein buch erster entwurf vorwartsdeltas oder ganzneu ruckwartsdeltas in welchem Fall die Datensatze zusammen mit der Information zu welcher Version sie gehoren in der Datei aufbewahrt werden Eine andere weitverbreitete Methode besteht darin pro Version jeweils eine eigene Anderungs Datei anzulegen Die Delta Speicherung kann beliebig oft angewendet werden und liefert somit eine komplette Historie der Versionen einer Datei Herstellen der gewunschten Version Bearbeiten Ausgehend von der Basisversion werden nacheinander die Anderungen in der korrekten Reihenfolge der Versionen vollzogen um die gewunschte Version zu erhalten Ublicherweise ist die neueste Version die am haufigsten gebrauchte Daher ist es meistens sinnvoll die zweite Variante der Speicherung Volldarstellung der neuesten Version und Abspeichern der Anderungen zu den Vorgangerversionen zu nutzen Sie hat sich auch bei vielen Versionskontrollsystemen wie z B RCS und CVS durchgesetzt Im Falle von Verzweigungen der Versionsgeschichte wird dort aber auch die zweite Variante eingesetzt Man geht von der neuesten Version ruckwarts bis zum Verzweigungspunkt dann vorwarts zur gewunschten Version des Seitenzweigs Anwendungsfalle Bearbeiten Zwei Anwendungsfalle von Delta Kodierung sind Datensicherungssysteme z B rsync und Softwareversionsverwaltungstools z B Git Backup Systeme Bearbeiten Zahlreiche Datensicherungsprogramme sog Backup Tools verwenden Delta Kodierung Neben der Reduzierung des benotigten Speicherplatzes erlaubt sie fruhere Versionen von Dateien wiederherzustellen Ohne Delta Kodierung musste bei jeder Datensicherung die ganze Datei gespeichert werden was den benotigten Speicherplatz und die Dauer der Datensicherung erhohen wurde Git Bearbeiten Das verteilte Versionsverwaltungssystem Git verwendet Delta Kodierung in einer sogenannten Git Repack Operation Objekte im Repository die noch nicht delta kodiert wurden loose objects werden mit einer heuristisch ausgewahlten Untermenge aller anderen Objekte verglichen Die gemeinsamen Daten und Deltas werden in einem pack file zusammengefugt und dann mit konventionellen Methoden komprimiert In normalen Anwendungsfallen in denen Dateien inkrementell von Commit zu Commit geandert werden resultiert dieses Vorgehen in deutlichen Speicherplatzeinsparungen Eignung BearbeitenDie Natur der Daten ist entscheidend fur die Effektivitat jedes Datenkompressionsverfahrens Delta Kodierung eignet sich insbesondere fur Daten die geringe und einfach beschreibbare Unterschiede von Version zu Version aufweisen In diesem Fall reduziert Delta Kodierung die Datenredundanz erheblich Ein Beispiel dafur ist ein grosseres Textdokument in dem nur ein paar Satze geandert werden Fur andere Datensatze kann der Kompressionsgrad gering sein oder sogar die resultierende Redundanz erhohen Typische Binardateien wie z B ausfuhrbare Programme haben zu viele Anderungen von Version zu Version weshalb das Differenzspeichern fur diese nicht sinnvoll ist Im Falle bereits komprimierter Dateien kann eine vorige Dekompression die Delta Kodierung vereinfachen Bei der Videokompression wird Delta Kodierung in Form von P und B Frames verwendet und sorgt unter anderem fur deren hohe Effizienz Siehe auch Bearbeitendiff VCDIFFAnmerkungen Bearbeiten hier insbesondere in einem Bedeutungszusammenhang stehender Daten Abgerufen von https de wikipedia org w index php title Delta Kodierung amp oldid 230151433