Schnappschuss (Informationstechnik)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Unter Schnappschuss (englisch snapshot) versteht man in der Informationstechnik eine Momentaufnahme eines Systems oder Objekts.

Verteilte Systeme[Bearbeiten]

Im Bereich verteilter Systeme wird der Begriff für eine Aufzeichnung des globalen Zustandes zu einem bestimmten Zeitpunkt verwendet. Dies kann zum Beispiel mit dem Schnappschussalgorithmus erreicht werden.

Bildschirmfoto[Bearbeiten]

Hauptartikel: Screenshot

Der beliebige Inhalt auf einem Computerbildschirm wird über die Taste "Druck", auch "PrtSc (Print Screen)", in den Zwischenspeicher befördert. Das ist ein Snapshot (engl. eigentlich Screenshot) vom Bildschirminhalt. Nach Aufruf eines Textverarbeitungs- oder Bildbearbeitungsprogramms lässt sich der Bildschirminhalt dort aus dem Zwischenspeicher einfügen.

Schnappschuss einer Internetseite[Bearbeiten]

Der Schnappschuss einer Internetseite in einem Browser ist eine besondere Form des Bildschirmfotos oder des Screenshots. Hierbei kann auch der nicht direkt sichtbare bzw. der nur durch Scrollen erreichbare Bildschirminhalt in den Schnappschuss aufgenommen werden.

Versionsverwaltung[Bearbeiten]

Als Snapshot bezeichnet man bei Computerprogrammen eine Programmversion, die direkt aus der Datenbank der Versionsverwaltung und nicht als offizielle Version (engl. „release“) herausgegeben wird. Meist werden diese Versionen aus dem momentanen aktuellen Zustand der Versionsverwaltung des Quellcodes oder aus der Arbeitskopie des Projektes eines Entwicklers erzeugt.

Massenspeicher[Bearbeiten]

Bei Festplatten ist ein Snapshot ein besonderer Speicherbereich, der ältere oder jüngere Versionen geänderter Daten aufnimmt. Er enthält keine vollständige Kopie des Datenbestands, sondern wird bei jeder Änderung schrittweise gefüllt. Man unterscheidet dabei die Verfahren Redirect-on-Write und Copy-On-Write. Bei Redirect-on-Write werden alle Änderungen in den Snapshot umgeleitet. Bei Copy-on-Write werden Änderungen solange zurückgehalten, bis die ursprünglichen Daten in den Snapshot kopiert sind. Soll nun der Snapshot gelesen werden, wird zuerst geprüft, ob der zu lesende Teil dort vorhanden ist. Ist dies der Fall, wird dieser Teil verwendet, andernfalls wird von der Originaldatei gelesen.

In Dateisystemen[Bearbeiten]

Snapshots können im Dateisystem implementiert sein, wo z. B. in einem speziellen Verzeichnis auf ältere Versionen des Verzeichnisbaums lesend zugegriffen werden kann.

Beispiele sind das WAFL-Dateisystem, UFS in FreeBSD 5, das Btrfs, ZFS oder NTFS mit dem Volume Shadow Copy Service unter Windows.

Auf Block-Ebene[Bearbeiten]

Einige Disk-Arrays und Logical Volume Manager können Snapshots von Datenblöcken ihrer virtuellen Festplatten bzw. Logical Volumes vorhalten.

Anwendungen[Bearbeiten]

Von Snapshots können Datensicherungen angefertigt werden, ohne auf die Konsistenz des aktuellen Datenbestandes angewiesen zu sein. Einige Anwendungen und Dateisysteme bieten auch die Möglichkeit, die benutzten Daten in einen definierten Zustand zu versetzen und neue Schreibzugriffe zu verzögern, bis das darunter liegende System einen Snapshot erstellt hat.

So kann z. B. eine Datenbank während des Betriebs angehalten und ein Snapshot erstellt werden. Die Datenbank kann dann sofort wieder gestartet werden und der Snapshot z. B. an anderer Stelle auf ein Magnetband geschrieben werden. Moderne Datenbanksysteme ermöglichen allerdings konsistente Datensicherungen, ohne sie anzuhalten und Snapshots zu erstellen

Ist im Dateisystem ein Snapshot zugänglich, können Anwender ihre Dateien z. B. nach einem versehentlichen Überschreiben selbst wiederherstellen.

Wichtig ist jedoch immer, dass zum Zeitpunkt des Erstellen des Snapshots möglichst keine Schreiboperation mehr aktiv ist, um inkonsistente Daten im Snapshot zu vermeiden. Snapshots können also nur genutzt werden, wenn die Konsistenz des aktuellen Datenbestandes gewährleistet ist.

Siehe auch[Bearbeiten]