Grundlegendes zur Anfälligkeit von Gebühren für Blobmomentaufnahmen

Durch das Erstellen einer Momentaufnahme, die eine schreibgeschützte Kopie eines BLOBs darstellt, können auf Ihrem Konto zusätzliche Gebühren für die Datenspeicherung anfallen. Wenn Sie beim Entwurf Ihrer Anwendung die Art und Weise der Ermittlung dieser Gebühren berücksichtigen, können Sie unnötige Kosten minimieren.

Wichtige Überlegungen zur Abrechnung

Die folgende Liste enthält wichtige Punkte, die beim Erstellen einer Momentaufnahme zu berücksichtigen sind.

  • Gebühren werden für eindeutige Blöcke oder Seiten erhoben, die im BLOB oder in der Momentaufnahme enthalten sind. Ihrem Konto werden erst dann zusätzliche Gebühren für Momentaufnahmen angerechnet, die einem BLOB zugeordnet sind, wenn Sie das BLOB aktualisieren, auf dem sie basieren. Sobald Sie das Basis-BLOB aktualisieren, entstehen Abweichungen von den zugeordneten Momentaufnahmen, und es werden für alle eindeutigen Blöcke oder Seiten in jedem BLOB und in jeder Momentaufnahme Gebühren berechnet.

  • Wenn Sie einen Block innerhalb eines Block-BLOBs ersetzen, wird dieser Block anschließend als eindeutiger Block berechnet. Dies gilt auch, wenn der Block dieselbe Block-ID und dieselben Daten enthält wie in der Momentaufnahme. Sobald ein erneuter Commit für den Block ausgeführt wird, weicht er von seinem Pendant in den Momentaufnahmen ab, und Ihnen werden die Daten des Blocks berechnet. Das gleiche gilt für eine Seite in einem Seiten-BLOB, die mit identischen Daten aktualisiert wird.

  • Durch das Ersetzen eines Blockblobs durch Aufrufen der Methode UploadFile, UploadText, UploadStream oder UploadByteArray werden alle Blöcke in diesem Blob ersetzt. Wenn dem BLOB eine Momentaufnahme zugeordnet ist, weisen anschließend alle Blöcke im Basis-BLOB und in der Momentaufnahme Abweichungen auf, und Ihnen werden Gebühren für alle Blöcke in beiden BLOBs berechnet. Dies gilt auch, wenn die Daten im Basis-BLOB und in der Momentaufnahme identisch sind.

  • Der Azure-Blob-Dienst kann nicht feststellen, ob zwei Blöcke identische Daten enthalten. Jeder hochgeladene Block, für den ein Commit ausgeführt wird, wird als eindeutig behandelt, selbst wenn die enthaltenen Daten und die Block-ID identisch sind. Da Gebühren jeweils für eindeutige Blöcke berechnet werden, ist zu berücksichtigen, dass beim Aktualisieren eines BLOB mit einer zugeordneten Momentaufnahme zusätzliche eindeutige Blöcke generiert werden, für die zusätzliche Gebühren entstehen.

Wichtig

Planen und verwalten Sie Momentaufnahmen sorgfältig, um unnötige Gebühren zu vermeiden. Es wird empfohlen, Momentaufnahmen folgendermaßen zu verwalten:

  • Löschen und erstellen Sie zugehörige Momentaufnahmen für ein BLOB neu, wenn Sie das BLOB aktualisieren, selbst wenn Sie mit identischen Daten aktualisieren, es sei denn, der Anwendungsentwurf erfordert, dass die Momentaufnahmen beibehalten werden. Durch das Löschen und Neuerstellen der Momentaufnahmen für ein BLOB können Sie sicherstellen, dass das BLOB und die Momentaufnahmen nicht voneinander abweichen.
  • Wenn Sie Momentaufnahmen für ein Blob verwalten, vermeiden Sie den Aufruf von UploadFile, UploadText, UploadStream oder UploadByteArray , um das Blob zu aktualisieren, da diese Methoden alle Blöcke im Blob ersetzen. Aktualisieren Sie stattdessen so wenig Blöcke wie möglich, indem Sie die PutBlock-Methode und die PutBlockList-Methode aufrufen.

Abrechnungsszenarien für Momentaufnahmen

Die folgenden Szenarien veranschaulichen, wie Gebühren für ein Block-BLOB und zugehörige Momentaufnahmen berechnet werden. In Szenario 1 wurde das Basis-BLOB nicht aktualisiert, seit die Momentaufnahme erstellt wurde, so dass Gebühren nur für die eindeutigen Blöcke 1, 2 und 3 berechnet werden:

Diagramm, das zeigt, wie Blöcke in Szenario 1 berechnet werden

Szenario 1: Nur für die Blöcke 1, 2 und 3 entstehen Gebühren.

In Szenario 2 wurde das Basis-BLOB aktualisiert, die Momentaufnahme jedoch nicht. Block 3 wurde aktualisiert. Obwohl er die gleichen Daten und dieselbe ID enthält, ist er nicht identisch mit dem Block 3 der Momentaufnahme. Daher wird das Konto mit Gebühren für vier Blöcke belastet:

Diagramm, das zeigt, wie Blöcke in Szenario 2 berechnet werden

Szenario 2: Für die Blöcke 1, 2 und 3 im Basis-BLOB und für Block 3 in der Momentaufnahme fallen Gebühren an.

In Szenario 3 wurde das Basisblob aktualisiert, der Momentaufnahme jedoch nicht. Block 3 wurde im Basis-BLOB durch Block 4 ersetzt, die Momentaufnahme enthält aber immer noch den Block 3. Daher wird das Konto mit Gebühren für vier Blöcke belastet:

Diagramm, das zeigt, wie Blöcke in Szenario 3 berechnet werden

Szenario 3: Für die Blöcke 1, 2, 3 und 4 entstehen Gebühren.

In Szenario 4 wurde das Basis-BLOB vollständig aktualisiert und enthält keinen der ursprünglichen Blöcke. Daher wird das Konto für alle acht eindeutigen Blöcke belastet. Dieses Szenario kann auftreten, wenn Sie eine der Updatemethoden UploadFile, UploadText, UploadFromStream oder UploadByteArray verwenden, da diese Methoden alle Inhalte eines Blobs ersetzen.

Diagramm, das zeigt, wie Blöcke in Szenario 4 berechnet werden

Szenario 4: Für die Blöcke 1, 2, 3, 4, 5, 6, 7 und 8 entstehen Gebühren.

Weitere Informationen

Verwenden des BLOB-Speicherdiensts
Verwenden des Warteschlangenspeicherdiensts
Erstellen einer Momentaufnahme eines Blobs