Creare uno snapshot di un BLOB

Uno snapshot BLOB è una versione di sola lettura di un BLOB acquisito in un singolo momento. Dopo aver creato uno snapshot, può essere letto, copiato o eliminato, ma non modificato. Gli snapshot consentono di eseguire il backup di un BLOB così come vengono visualizzati in un determinato momento.

Uno snapshot di un BLOB ha lo stesso nome del BLOB di base da cui è stato eseguito, con un valore DateTime aggiunto per indicare l'ora in cui lo snapshot è stato creato. Ad esempio, se l'URI del BLOB di pagine è http://storagesample.core.blob.windows.net/mydrives/myvhd, l'URI dello snapshot sarà simile http://storagesample.core.blob.windows.net/mydrives/myvhd?snapshot=2011-03-09T01:42:34.9360000Za . È possibile usare questo valore per fare riferimento allo snapshot per altre operazioni. Gli snapshot di un BLOB condividono l'URI del BLOB e sono distinti solo per questo DateTime valore.

Un BLOB può avere un numero qualsiasi di snapshot. Gli snapshot vengono mantenuti fino a quando non vengono eliminati in modo esplicito. Uno snapshot non può sopravvivere al BLOB di origine. È possibile enumerare gli snapshot associati al BLOB per tenere traccia degli snapshot correnti.

Ereditarietà delle proprietà

Quando si crea uno snapshot di un BLOB, le proprietà di sistema vengono copiate nello snapshot con gli stessi valori, tra cui:

  • ContentType
  • ContentEncoding
  • ContentLanguage
  • Length
  • CacheControl
  • ContentMd5

Un lease associato al BLOB di base non viene copiato nello snapshot. Non è possibile eseguire il lease degli snapshot.

Copia di snapshot

Le operazioni di copia che interessano BLOB e snapshot si attengono alle seguenti regole:

  • È possibile copiare uno snapshot sul relativo BLOB di base. Promuovendo uno snapshot alla posizione del BLOB di base, è possibile ripristinare la versione precedente di un BLOB. Lo snapshot rimane, ma la relativa origine viene sovrascritta con una copia che è possibile leggere e scrivere.

  • È possibile copiare uno snapshot in un BLOB di destinazione con un nome diverso. Il BLOB di destinazione risultante è un BLOB scrivibile, non uno snapshot.

  • Quando si copia un BLOB di origine, gli snapshot del BLOB di origine non vengono copiati nella destinazione. Quando un BLOB di destinazione viene sovrascritto da una copia, tutti gli snapshot associati al BLOB di destinazione rimangono intatti sotto il nome.

  • Quando si crea uno snapshot di un BLOB in blocchi, anche l'elenco di blocchi di cui è stato eseguito il commit del BLOB viene copiato nello snapshot. Eventuali blocchi di cui non è stato eseguito il commit non vengono copiati.

Specifica di una condizione di accesso

È possibile specificare una condizione di accesso in modo che lo snapshot venga creato solo se tale condizione viene soddisfatta. Se la condizione specificata non viene soddisfatta, lo snapshot non viene creato e l'archiviazione BLOB di Azure restituisce il codice di stato HTTPStatusCode.PrecondizioneFailed. Per altre informazioni, vedere SNAPSHOT BLOB.

Eliminazione di snapshot

Un BLOB con snapshot non può essere eliminato a meno che non vengano eliminati anche gli snapshot. È possibile eliminare uno snapshot singolarmente oppure eliminare tutti gli snapshot quando si elimina il BLOB di origine. Se si tenta di eliminare un BLOB che contiene ancora snapshot, la chiamata restituisce un errore.

Vedi anche

Snapshot Blob
Put Block
Put Block List
Put Page
Eliminare un BLOB
Elenco delle risorse di archiviazione BLOB
Informazioni sul modo in cui gli snapshot accumulano addebiti