Esporta (0) Stampa
Espandi tutto

Informazioni sull'incremento dei costi dovuto agli snapshot

Aggiornamento: aprile 2015

La creazione di uno snapshot, ovvero una copia di sola lettura di un Blob, può comportare un aumento delle spese di archiviazione dei dati per l'account. Quando si progetta un'applicazione, è importante tenere presente l'eventuale incremento di tali spese per ridurre al minimo i costi non necessari.

Nell'elenco seguente sono presentati i punti chiave da considerare per creare uno snapshot.

  • Le spese sono generate per blocchi o pagine univoche, indipendentemente dal fatto che si trovino nel Blob o nello snapshot. Non sono previste spese aggiuntive per l'account per gli snapshot associati a un Blob finché non si aggiorna il Blob su cui sono basati. Una volta aggiornato, il Blob di base è diverso dai relativi snapshot, pertanto verranno addebitati i blocchi o le pagine univoche in ogni Blob o snapshot.

  • Quando si sostituisce un blocco in un Blob in blocchi, tale blocco viene successivamente addebitato come blocco univoco. Ciò vale anche se il blocco ha ID blocco e dati identici a quelli dello snapshot. Quando si esegue di nuovo il commit del blocco, esso è diverso dalla relativa controparte nello snapshot, pertanto ne verranno addebitati i dati. Ciò vale anche per una pagina in un Blob di pagine aggiornata con dati identici.

  • La sostituzione di un BLOB in blocchi chiamando il metodo UploadFile, UploadText, UploadStream o UploadByteArray comporta la sostituzione di tutti i blocchi nel BLOB. Se è presente uno snapshot associato al Blob, tutti i blocchi nel Blob e nello snapshot di base saranno diversi e verranno addebitati tutti i blocchi in entrambi i Blob. Ciò vale anche se i dati del Blob e dello snapshot di base rimangono identici.

  • Il servizio Blob di Azure non fornisce metodi per determinare se due blocchi contengono dati identici. Ogni blocco caricato e di cui viene eseguito il commit viene considerato univoco, anche se è associato agli stessi dati e allo stesso ID blocco. Poiché i blocchi univoci comportano un aumento dei costi, è importante ricordare che l'aggiornamento di un BLOB che presenta uno snapshot genererà blocchi univoci e costi aggiuntivi.

ImportantImportante
Come procedura consigliata, è opportuno gestire gli snapshot con attenzione per evitare costi supplementari. È consigliabile gestire gli snapshot nel modo seguente:

  • Eliminare e ricreare gli snapshot associati a un Blob ogni volta che si aggiorna il Blob, anche se l'aggiornamento interessa dati identici, a meno che il progetto dell'applicazione non richieda la gestione degli snapshot. L'eliminazione e la ricreazione degli snapshot del Blob consente di assicurare che Blob e snapshot non siano diversi.

  • Se si gestiscono snapshot per un BLOB, evitare di chiamare UploadFile, UploadText, UploadStream o UploadByteArray per aggiornare il BLOB, in quanto questi metodi sostituiscono tutti i blocchi nel BLOB. Aggiornare invece il minor numero possibile di blocchi usando i metodi PutBlock e PutBlockList.

Negli scenari seguenti viene illustrato l'incremento delle spese per un Blob in blocchi e i relativi snapshot. Nello scenario 1 il Blob di base non è stato aggiornato dopo l'esecuzione dello snapshot, pertanto le spese vengono addebitate solo per i blocchi univoci 1, 2 e 3:

WA_SnapshotScenario1

Nello scenario 2 è stato aggiornato il Blob di base, ma non lo snapshot. Il blocco 3 è stato aggiornato e anche se contiene gli stessi dati e lo stesso ID, non corrisponde al blocco 3 nello snapshot. Di conseguenza, all'account vengono addebitati quattro blocchi:

WA_SnapshotScenario2

Nello scenario 3 è stato aggiornato il Blob di base, ma non lo snapshot. Il blocco 3 è stato sostituito con il blocco 4 nel BLOB di base, ma lo snapshot riflette ancora il blocco 3. Di conseguenza, all'account vengono addebitati quattro blocchi:

WA_SnapshotScenario3

Nello scenario 4 il Blob di base è stato completamente aggiornato e non contiene nessuno dei blocchi originali. Di conseguenza, all'account vengono addebitati tutti e otto i blocchi univoci. Questo scenario può verificarsi se si usa un metodo di aggiornamento come UploadFile, UploadText, UploadFromStream o UploadByteArray, perché questi metodi sostituiscono tutto il contenuto di un BLOB.

WA_SnapshotScenario4

Vedere anche

Mostra:
© 2015 Microsoft