スナップショットの課金方法について
目次を折りたたむ
目次を展開する
この記事は機械翻訳されたものです。 記事の文章にポインターを重ねると、原文のテキストが表示されます。 詳細情報
訳文
原文

スナップショットの課金方法について

 

スナップショット (BLOB の読み取り専用コピー) を作成すると、別途データ ストレージ料金がアカウントに課金される場合があります。 不要なコストを抑えるためにも、アプリケーションを設計する際は、この料金が発生するしくみを理解しておくことが重要です。

スナップショットの作成時に考慮する必要のある重要なポイントを以下に示します。

  • 料金はブロックまたはページに対して一意的に発生します。そのブロックまたはページが BLOB であるかスナップショットであるかは関係ありません。 BLOB に関連付けられているスナップショットについてアカウントに追加料金が発生するのは、そのベースになっている BLOB を更新したときです。 いったんベース BLOB を更新すると、ベース BLOB はそのスナップショットから分化し、それぞれの BLOB またはスナップショットの中で、一意のブロックまたはページに対する料金が発生するようになります。

  • ブロック BLOB 内のブロックを置き換えた場合、以後そのブロックは一意のブロックとして課金されます。 そのブロックに割り当てられているブロック ID とデータが、スナップショット側と同じであっても変わりません。 ブロックが再度コミットされると、そのブロックはスナップショット内の対応するブロックから分化し、そのデータに対する料金が発生します。 これは、ページ BLOB 内のページを、まったく同じデータで更新した場合にも当てはまります。

  • 呼び出して、ブロック blob を置き換える、 UploadFile, 、UploadText, 、UploadStream, 、または UploadByteArray メソッドでは、その blob 内のブロックのすべてに置き換わります。 その BLOB に関連付けられているスナップショットがある場合、ベース BLOB とスナップショット内のすべてのブロックが分化し、両方の BLOB のすべてのブロックが課金対象となります。 これは、ベース BLOB 内のデータとスナップショット内のデータとがまったく同一であっても変わりません。

  • 2 つのブロックに格納されているデータが同一であるかどうかを判断する方法は、Azure BLOB サービスには用意されていません。 アップロードされてコミットされた各ブロックは、同じデータや同じブロック ID を持っていたとしても、それぞれが一意の存在として扱われます。 料金は一意のブロックに対して発生するため、スナップショットを持つ BLOB を更新すると、一意のブロックがその分増えて、追加料金が発生することに注意してください。

System_CAPS_important重要

不要な料金を避けるためにも、スナップショットは日頃から慎重に管理してください。 スナップショットは次のように管理することをお勧めします。

  • まったく同じデータで更新する場合も含め、BLOB を更新するときは必ずその BLOB に関連付けられているスナップショットを削除してから作成し直すようにします (アプリケーションの設計上、スナップショットを維持しなければならない場合を除く)。 BLOB のスナップショットを削除してから作成し直すことにより、BLOB とスナップショットの分化を確実に防ぐことができます。

  • Blob のスナップショットを保持している場合は、呼び出し元を回避する UploadFile, 、UploadText, 、UploadStream, 、または UploadByteArray をこれらのメソッドがすべての blob にブロックを置き換えるように、blob を更新します。 使用して、最小限のブロック数を代わりに、更新、 PutBlockPutBlockList メソッドです。

ブロック BLOB とそのスナップショットについて料金が発生するしくみを次のシナリオで説明します。 シナリオ 1 は、スナップショットが作成されてからベース BLOB は更新されていません。したがって、料金の発生対象は、一意のブロックである 1、2、3 のみです。

WA_SnapshotScenario1

シナリオ 1:ブロック 1、2、3 についてのみ料金が発生する。

シナリオ 2 は、ベース BLOB が更新されています。スナップショットは更新されていません。 更新されたのはブロック 3 です。格納されているデータと ID が同じでも、スナップショット内のブロック 3 とは異なります。 このため、4 ブロック分の料金がアカウントに課金されます。

WA_SnapshotScenario2

シナリオ 2:ベース BLOB のブロック 1、2、3 に加え、スナップショットのブロック 3 に対して料金が発生する。

シナリオ 3 の場合は、ベース blob が更新されましたが、スナップショットはされていません。 ベース BLOB のブロック 3 がブロック 4 に置き換わっていますが、スナップショット側はブロック 3 のままです。 このため、4 ブロック分の料金がアカウントに課金されます。

WA_SnapshotScenario3

シナリオ 3:ブロック 1、2、3、4 について料金が発生する。

シナリオ 4 では、ベース BLOB が完全に更新されており、元のブロックは 1 つも含まれていません。 このため、8 つある一意のブロックすべてについての料金がアカウントに課金されます。 このシナリオなどの更新メソッドを使用する場合に発生する可能性が UploadFile, 、UploadText, 、UploadFromStream, 、または UploadByteArray, であるため、これらのメソッドでは、blob の内容がすべて置き換えられます。

WA_SnapshotScenario4

シナリオ 4:ブロック 1、2、3、4、5、6、7、8 について料金が発生する。

表示:
© 2016 Microsoft