(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

Erstellen einer Momentaufnahme eines BLOB

Letzte Aktualisierung: November 2014

Sie können eine Momentaufnahme eines BLOB erstellen. Eine Momentaufnahme ist eine zu einem bestimmten Zeitpunkt erstellte, schreibgeschützte Version eines BLOB. Sobald eine Momentaufnahme erstellt wurde, kann sie gelesen, kopiert oder gelöscht, aber nicht mehr geändert werden. Momentaufnahmen bieten eine Möglichkeit, eine Sicherung des Zustands eines BLOB zu einem bestimmten Zeitpunkt zu erstellen.

Eine Momentaufnahme eines BLOB hat den gleichen Namen wie das Basis-BLOB, aus dem die Momentaufnahme erstellt wurde, an den zusätzlich ein DateTime-Wert angefügt wird, der den Zeitpunkt angibt, an dem die Momentaufnahme erstellt wurde. Wenn der Seiten-BLOB-URI http://storagesample.core.blob.windows.net/mydrives/myvhd ist, lautet der Momentaufnahme-URI z. B. http://storagesample.core.blob.windows.net/mydrives/myvhd?snapshot=!2011-03-09T01:42:34.9360000Z. Über diesen Wert kann bei anschließenden Vorgängen auf die Momentaufnahme verwiesen werden. Die Momentaufnahmen eines BLOB verwenden denselben URI und unterscheiden sich nur durch diesen DateTime-Wert. Im Clientbibliothekscode gibt die Snapshot-Eigenschaft des BLOB einen DateTime-Wert zurück, der die Momentaufnahme in Bezug auf das Basis-BLOB eindeutig identifiziert. Sie können diesen Wert verwenden, um weitere Vorgänge für die Momentaufnahme durchzuführen.

Für ein BLOB kann eine beliebige Anzahl von Momentaufnahmen vorhanden sein. Momentaufnahmen bleiben bestehen, bis sie explizit gelöscht werden, wobei eine Momentaufnahme aber nicht ohne das zugehörige Quell-BLOB existieren kann. Sie können alle einem BLOB zugeordneten Momentaufnahmen auflisten, um die aktuell vorhandenen Momentaufnahmen nachzuverfolgen.

Erben von Eigenschaften

Wenn Sie eine Momentaufnahme eines BLOB erstellen, werden die Systemeigenschaften mit denselben Werten in die Momentaufnahme kopiert. Diese Liste führt kopierte Systemeigenschaften für die .NET-Speicherclientbibliothek auf:

Eine dem Basis-BLOB zugeordnete Lease wird nicht in die Momentaufnahme kopiert. Momentaufnahmen können nicht geleast werden.

Kopieren von Momentaufnahmen

Für Kopiervorgänge, die BLOBs und Momentaufnahmen betreffen, gelten folgende Regeln:

  • Sie können eine Momentaufnahme auf das zugehörige Basis-BLOB kopieren. Wenn Sie eine Momentaufnahme zu einem Basis-BLOB heraufstufen, können Sie so eine frühere Version eines BLOB wiederherstellen. Die Momentaufnahme bleibt erhalten, ihre Quelle wird jedoch mit einer Kopie überschrieben, die gelesen und geschrieben werden kann.

  • Sie können eine Momentaufnahme zu einem Ziel-BLOB mit einem anderen Namen kopieren. Das resultierende Ziel-BLOB ist ein schreibbares BLOB und keine Momentaufnahme.

  • Wenn ein Quell-BLOB kopiert wird, werden ggf. vorhandene Momentaufnahmen des Quell-BLOB nicht mit an das Ziel kopiert werden. Wenn ein Ziel-BLOB mit einer Kopie überschrieben wird, bleiben alle dem Ziel-BLOB zugeordneten Momentaufnahmen unter dem Namen des BLOB erhalten.

  • Wenn Sie eine Momentaufnahme eines Block-BLOB erstellen, wird die Liste der Blöcke mit ausgeführtem Commit für das BLOB ebenfalls in die Momentaufnahme kopiert. Blöcke ohne ausgeführten Commit werden nicht kopiert.

Angeben einer Zugriffsbedingung

Sie können eine Zugriffsbedingung angeben, sodass die Momentaufnahme nur erstellt wird, wenn eine bestimmte Bedingung erfüllt ist. Um eine Zugriffsbedingung anzugeben, verwenden Sie die AccessCondition-Eigenschaft. Wenn die angegebene Bedingung nicht erfüllt ist, wird die Momentaufnahme nicht erstellt, und der Blob-Dienst gibt den Statuscode HTTPStatusCode.PreconditionFailed zurück.

Löschen von Momentaufnahmen

Ein BLOB mit Momentaufnahmen kann nicht gelöscht werden, es sei denn, die Momentaufnahmen werden ebenfalls gelöscht. Sie können eine Momentaufnahme einzeln löschen oder dem Speicherdienst mitteilen, dass alle Momentaufnahmen beim Löschen des Quell-BLOB gelöscht werden sollen. Wenn Sie versuchen, ein BLOB zu löschen, für das noch Momentaufnahmen vorhanden sind, gibt der Aufruf einen Fehler zurück.

Erstellen des absoluten URI zu einer Momentaufnahme

Dieses Codebeispiel erstellt den absoluten URI einer Momentaufnahme aus dem Basis-BLOB-Objekt.

var snapshot = blob.CreateSnapshot();
var uri = Microsoft.WindowsAzure.StorageClient.Protocol.BlobRequest.Get
    (snapshot.Uri, 
    0, 
    snapshot.SnapshotTime.Value, 
    null).Address.AbsoluteUri;

Siehe auch

Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Vielen Dank für Ihr Feedback.
Anzeigen:
© 2014 Microsoft. Alle Rechte vorbehalten.