BLOB データのアクセス層

クラウド内の格納データが急激に増加しています。 拡大するストレージ ニーズのコストを管理するには、アクセス頻度と保持期間に基づいてデータを整理するのが有効です。 Azure ストレージには、使用方法に応じて最もコスト効率の高い方法で BLOB データを保存できるように複数のアクセス層が用意されています。 Azure Storage アクセス層には次のものがあります。

  • ホット アクセス層 - 頻繁にアクセスまたは変更するデータの保存に最適なオンライン層。 ホット アクセス層はストレージ コストが最も高く、アクセス コストは最も安いです。
  • クール アクセス層 - アクセスおよび変更の頻度が低いデータの保存に最適なオンライン層。 クール アクセス層のデータは、最低 30 日間は保存する必要があります。 クール アクセス層は、ホット アクセス層と比べてストレージ コストが安く、アクセス コストが高いです。
  • コールド アクセス層 - めったにアクセスされたり、変更されたりしないが、それでも高速で取得できなければならないデータを格納するために最適化されたオンライン層。 コールド アクセス層のデータは、最低 90 日間は保存する必要があります。 コールド アクセス層は、クール アクセス層と比べてストレージ コストが安く、アクセス コストが高くなります。
  • アーカイブ アクセス層 - めったにアクセスせず、数時間規模の待機時間の変動を許容できるデータ保存に最適なオフライン層。 アーカイブ アクセス層のデータは、最低 180 日間は保存する必要があります。

Azure ストレージの容量上限は、アクセス層によって決まるのではなく、アカウント単位で設定します。 1 つのアクセス層の容量を大きくすることも、2 つ以上の層に容量を分配することもできます。

注意

アクセス層の設定はブロック BLOB でのみ許可されています。 これらは、追加 BLOB とページ BLOB ではサポートされていません。

オンライン アクセス層

オンライン アクセス層 (ホット、クールまたはコールド アクセス層) に保存してあるデータは、即座にアクセスできます。 ホット アクセス層は頻繁に使用するデータに最適です。 クールまたはコールド アクセス層は、アクセス頻度はそれほど高くないものの読み取りと書き込みが必要なデータに最適です。

ホット アクセス層の使用シナリオの例には、次のようなケースがあります。

  • 頻繁に使用されているデータ、または頻繁に読み書きが必要となることが予想されるデータ。
  • 処理段階にあり、最終的にはクール アクセス層に移行されるデータ。

クールおよびコールド アクセス層の使用シナリオには、次のようなものがあります。

  • 短期データ バックアップとディザスター リカバリー。
  • 頻繁には使用しないものの、即座にアクセスできるようにしておきたい古いデータ セット。
  • 追加データを収集、処理しながら、コストを抑えた方法で保存する必要がある大規模なデータ セット。

BLOB をホット アクセス層、クール アクセス層、またはコールド アクセス層に移動する方法については、「BLOB のアクセス層を設定する」をご覧ください。

クール アクセス層とコールド アクセス層は少しデータを利用しにくくなりますが、持続性、データ取得待機時間、スループットはホット アクセス層と同様の高水準です。 クール アクセス層またはコールド アクセス層は、ホット アクセス層と比べて少しデータが利用しにくく、アクセス コストが高いですが、状況によってはストレージに関わる総合的なコストが安くなるので、トレードオフとしてそれを許容できる場合もあります。 詳細については、「Storage の SLA」を参照してください。

BLOB は、層に必要な最小日数が経過する前に削除、上書き、または異なる層に移動された場合、早期削除のペナルティの対象となります。 たとえば、汎用 v2 アカウントのクール アクセス層の BLOB は、30 日が経過する前に削除するか異なる層に移動した場合に、早期削除のペナルティの対象となります。 コールド アクセス層の BLOB の場合、90 日が経過する前に削除または別の層に移動された場合、削除ペナルティが適用されます。 この料金は日割り計算されます。 たとえば、BLOB をクール アクセス層に移動させてから 21 日後に削除した場合は、BLOB をクール アクセス層に 9 日間 (30 − 21日) 保存する料金に相当する早期削除料金が発生します。 早期削除の料金は、指定された時間枠内にオブジェクト全体が任意の操作 (つまり、Put Blob、Put Block List、または Copy Blob) によって書き換えられた場合にも発生します。

Note

論理的な削除が有効になっているアカウントの BLOB は、削除されて保持期間が経過した後で、削除されたものと見なされます。 その期間が経過するまで、BLOB は "論理的に削除されている" だけであり、早期削除ペナルティの対象にはなりません。

ホット、クールおよびコールド アクセス層では、すべての冗長性構成をサポートしています。 Azure Storage のデータ冗長性オプションの詳しい情報は「Azure Storage の冗長性」をご覧ください。

アーカイブ アクセス層

アーカイブ アクセス層は、めったにアクセスしないデータを保存するためのオフライン層です。 アーカイブ アクセス層では、ストレージ コストは最も低くなります。 しかし、この層は、ホット アクセス層、クール アクセス層、コールド アクセス層に比べ、データ取得コストが高く、待機時間も長くなります。 アーカイブ アクセス層の使用シナリオの例には、次のようなものがあります。

  • 長期バックアップ、セカンダリ バックアップ、アーカイブ データセット
  • 最終的に使用可能な形式に処理した後も保持する必要がある、元の (生の) データ
  • 長期間格納しておく必要があり、ほとんどアクセスされることがない、コンプライアンスおよびアーカイブ データ

BLOB をアーカイブ アクセス層に移動する方法については、「BLOB をアーカイブする」を参照してください。

データは、少なくとも 180 日間、アーカイブ層に保持される必要があります。そうでない場合、早期削除料金の対象になります。 たとえば、BLOB をアーカイブ アクセス層に移動して、45 日後にそれを削除するかホット アクセス層に移動した場合、その BLOB を 135 (180 − 45) 日間アーカイブ アクセス層に保存する料金に相当する早期削除料金が発生します。

Note

論理的な削除が有効になっているアカウントの BLOB は、削除されて保持期間が経過した後で、削除されたものと見なされます。 その期間が経過するまで、BLOB は "論理的に削除されている" だけであり、早期削除ペナルティの対象にはなりません。

BLOB は、アーカイブ アクセス層にある間は、読み取りも変更もできません。 アーカイブ アクセス層の BLOB を読み取る、またはダウンロードするには、まずオンライン層 (ホット、クールまたはコールド アクセス層) にリハイドレートする必要があります。 アーカイブ層のデータは、再水和操作に指定した優先度に応じて、再水和するのに最大15時間かかる場合があります。 BLOB のリハイドレートの詳しい情報は「アーカイブ層からの BLOB のリハイドレートの概要」をご覧ください。

アーカイブした BLOB のメタデータへの読み取りアクセスは引き続き可能であるため、BLOB とそのプロパティ、メタデータ、インデックス タグのリストを取得することができます。 アーカイブ アクセス層の BLOB のメタデータは読み取り専用ですが、BLOB インデックス タグは読み取りと書き込みができます。 アーカイブされた BLOB のメタデータのストレージ コストは、クール 層の料金で課金されます。 アーカイブした BLOB のスナップショットはサポートしていません。

アーカイブ アクセス層の BLOB では次の操作ができます。

アーカイブ アクセス層への BLOB の移動は、LRS、GRS、または RA-GRS 用に構成されたストレージ アカウントのみでサポートされます。 アーカイブ アクセス層は、ZRS、GZRS、RA-GZRS のアカウントではサポートされていません。 Azure Storage の冗長構成の詳細については、「Azure Storage の冗長性」を参照してください。

アーカイブ アクセス層に BLOB を含むストレージ アカウントの冗長構成を変更するには、まず、すべてのアーカイブされた BLOB をホット アクセス層、クール アクセス層またはコールド アクセス層にリハイドレートする必要があります。 リハイドレート操作にはコストと時間がかかる可能性があるため、Microsoft では、アーカイブされた BLOB を含むストレージ アカウントの冗長構成を変更することは、可能な限り避けることをお勧めしています。

LRS から GRS へのストレージ アカウントの移行は、アカウントを LRS に構成しているときにアーカイブ アクセス層に移動した BLOB がなければ可能です。 アカウントが LRS になってから 30 日未満の期間内に更新を行い、かつ、アカウントを LRS に設定しているときにアーカイブ アクセス層に移動した BLOB がない場合は、アカウントを GRS に戻せます。

アカウントのデフォルト アクセス層の設定

ストレージ アカウントには、新しい BLOB を作成するオンライン層を指定するための、デフォルト アクセス層の設定が存在します。 デフォルト アクセス層には、ホット、クールいずれかのアクセス層を設定できます。 ユーザーは、BLOB をアップロードするとき、または BLOB の層を変更するときに、BLOB のデフォルト設定を個別に上書きできます。

新しい汎用 v2 ストレージ アカウントの既定のアクセス層は、既定でホット層に設定されています。 デフォルト アクセス層の設定は、ストレージ アカウントの作成時および作成後に変更できます。 ストレージ アカウントでこの設定を変更しない場合、または BLOB のアップロード時に層を明示的に設定しない場合、新しい BLOB は既定でホット アクセス層にアップロードされます。

明示的に層を割り当てていない BLOB では、アカウント のデフォルト アクセス層の設定によって層を判断します。 アカウントのデフォルト アクセス層の設定によって BLOB のアクセス層を推定した場合、Azure portal では、アクセス層が [ホット (推定)][クール (推定)]、または [コールド (推定)] と表示されます。

ストレージ アカウントのデフォルト アクセス層の設定を変更すると、アクセス層を明示的に設定していない、アカウント内のすべての BLOB に適用されます。 汎用 v2 アカウントで既定のアクセス層の設定をよりクールな層に切り替えると、そのアクセス層が推定されるすべての BLOB に対する書き込み操作 (10,000 件ごと) に料金が発生します。 汎用 v2 アカウントでよりホットな層に切り替えると、読み取り操作 (10,000 件単位) とデータ取得 (1 GB 単位) の両方の料金が発生します。

レガシ BLOB Storage アカウントを作成するときには、作成時に既定のアクセス層設定をホットまたはクールに指定する必要があります。 レガシ BLOB Storage アカウントの既定のアカウント アクセス層設定をよりクールな層に変更するのに料金はかかりません。 Blob Storage アカウントでよりホットな層に切り替えると、読み取り操作 (10,000 件単位) とデータ取得 (1 GB 単位) の両方の料金が発生します。 Microsoft では、可能な限り BLOB Storage アカウントではなく、汎用 v2 ストレージ アカウントを使用することをお勧めします。

Note

アーカイブ アクセス層は、ストレージ アカウントのデフォルト アクセス層には設定できません。

BLOB の層の設定または変更

BLOB 作成時に層を明示的に設定するには、BLOB をアップロードするときに層を指定します。

BLOB 作成後は、次のいずれかの方法で層を変更できます。

  • 直接、またはライフサイクル管理ポリシーを通じて BLOB 層の設定 (BLOB の層を設定) 操作を呼び出す。 BLOB の層をよりホットな層からよりクールなものに変更する場合は、Set Blob Tier を呼び出すのが通常最も良い方法です。

    Note

    ライフサイクル管理ポリシーを使用して、アーカイブ済み BLOB をオンライン層にリハイドレートすることはできません。

  • Copy Blob (BLOB のコピー) 操作を呼び出して、ある層から別の層に BLOB をコピーする。 アーカイブ アクセス層からオンライン アクセス層に BLOB をリハイドレートする、またはクールまたはコールドからホットに BLOB を移動するほとんどのシナリオでは、Copy Blob を呼び出すことをお勧めします。 ソース BLOB で必要な保存期間がまだ経過していない場合、BLOB をコピーすることで早期削除ペナルティを避けることができます。 ただし、BLOB をコピーすると、ソース BLOB とコピーで作成した BLOB の 2 つに対してストレージ容量の料金が発生します。

よりホットな層からよりクールな層へは、BLOB の層を即座に変更できます。コールドまたはクールからホット アクセス層への変更も同様です。 アーカイブ アクセス層からホット、クールまたはコールド アクセス層などのオンライン層に BLOB をリハイドレートするには、最大で 15 時間かかります。

BLOB の層を変更するときは、以下の点に注意してください。

  • 暗号化スコープが使用されている BLOB では、Set Blob Tier を呼び出せません。 暗号化スコープの詳細については、Blob Storage の暗号化スコープに関する記事を参照してください。
  • BLOB を明示的にクールまたはコールド アクセス層に移動した後でアーカイブ アクセス層に移動した場合は、早期削除料金が適用されます。

BLOB のライフサイクル管理

BLOB ストレージのライフサイクル管理では、指定した条件を満たしたときにデータを必要なアクセス層に切り替えるための、ルールに基づくポリシーを用意しています。 ライフサイクル管理によって、データに有効期限を設定することもできます。 詳細については、「Azure Blob Storage アクセス層の自動化によるコストの最適化」を参照してください。

ライフサイクル管理ポリシーを使用して、アーカイブ済み BLOB をオンライン層にリハイドレートすることはできません。 Set Blob Tier (BLOB の層を設定) および Azure Blob Storage ライフサイクル管理によって、premium ブロック BLOB ストレージ アカウントに保存しているデータの層を、ホット、クール、コールドおよびアーカイブ アクセス層に設定することはできません。 データを移動するには、Put Block From URL API またはこの API をサポートしているバージョンの AzCopy によって、ブロック BLOB ストレージ アカウントから別のアカウントのホット アクセス層に、BLOB を同期的にコピーする必要があります。 Put Block From URL API は、サーバー上でデータを同期的にコピーします。つまり、呼び出しは、すべてのデータが元のサーバーの場所から移動先の場所に移動された場合にのみ完了します。

Storage Actions

ライフサイクル管理は 1 つのアカウント内の層間でのデータ移動に役立ちますが、ストレージ タスクを使用すれば、このタスクを複数のアカウント全体で大規模に遂行できます。 ストレージ タスクは Azure Storage Actions で利用できるリソースです。これは、複数のストレージ アカウントにまたがる数百万ものオブジェクトに対して一般的なデータ操作を実行するために使用できるサーバーレス フレームワークです。 詳細については、「Azure Storage Actions とは」を参照してください。

アクセス層のオプションの概要

次の表に、ホット、クール、コールドおよびアーカイブ アクセス層の機能の概要を記載します。

ホット層 クール層 コールド層 アーカイブ層
可用性 99.9% 99% 99% 99%
可用性
(RA-GRS 読み取り)
99.99% 99.9% 99.9% 99.9%
利用料金 ストレージ コストが高く、アクセスおよびトランザクション コストが安い ストレージ コストが安く、アクセスおよびトランザクション コストが高い ストレージ コストが安く、アクセスおよびトランザクション コストが高い ストレージ コストが最も安く、アクセスおよびトランザクション コストが最も高い
最低推奨データ保持期間 該当なし 30 日1 90 日1 180 日
待機時間
(1 バイト目にかかる時間)
ミリ秒 ミリ秒 ミリ秒 時間2
サポートされている冗長構成 すべて すべて すべて LRS、GRS、RA-GRS3 のみ

1 汎用 v2 アカウントのクール アクセス層のオブジェクトには、30 日の最低保持期間が存在します。 汎用 v2 アカウントのコールド アクセス層のオブジェクトには、90 日の最低保持期間が存在します。 Blob Storage アカウントでは、クールまたはコールド アクセス層の最低保持期間は存在しません。

2 アーカイブ アクセス層から BLOB をリハイドレートするときは、標準とリハイドレート優先のオプションのどちらかを選べます。 データ取得待機時間とコストがそれぞれ異なります。 詳細については、「アーカイブ層からの BLOB のリハイドレートの概要」を参照してください。

3 Azure Storage の冗長性構成の詳しい情報は「Azure Storage の冗長性」をご覧ください。

価格と課金

すべてのストレージ アカウントで、BLOB の層に基づくブロック BLOB ストレージ価格モデルを使用しています。 料金に関して、次以降のセクションで説明する事柄にご注意ください。

ブロック BLOB の価格の詳しい情報は、ブロック BLOB の価格に関するページをご覧ください。

ストレージ容量のコスト

データの格納のコストは、格納されているデータの量だけでなく、アクセス層にも左右されます。 低頻度アクセス用の層ほど、ギガバイトあたりの容量のコストが安いです。

データ アクセス コスト

データ アクセス料金は、よりクールな層になるほど高くなります。 クール アクセス層、コールド アクセス層およびアーカイブ アクセス層のデータの場合、読み取りに対して、ギガバイト単位のデータ アクセス料金が課金されます。

トランザクション コスト

すべての層でトランザクションごとに料金が発生し、低頻度アクセス用の層ほどこれが高くなります。

geo レプリケーション データ転送コスト

この料金は、GRS、RA-GRS、GZRS を含む、geo レプリケーションが構成されているアカウントだけに適用されます。 geo レプリケーション データ転送には、ギガバイトあたりの料金がかかります。

送信データ転送のコスト

外部へのデータ転送 (Azure リージョン外に転送するデータ) は、帯域幅の使用量に従ってギガバイト単位で料金が発生します。 送信データ転送料金について詳しくは、「帯域幅の料金詳細」ページを参照してください。

アカウントのデフォルト アクセス層を変更する

アカウントのアクセス層を変更すると、明示的に層を設定していないすべての BLOB に対し、層変更料金が発生します。 詳しくは、次のセクション「BLOB のアクセス層を変更する」をご覧ください。

BLOB のアクセス層を変更する

BLOB の層を変更すると、料金に対する次の影響があることにご注意ください。

  • BLOB のアップロードまたは階層間の移動を行うと、アップロードまたは階層変更の直後に、対応する料金が請求されます。
  • BLOB をよりクールな層に移動するとき、この操作は移動先の層への書き込み操作として課金され、移動先の層の書き込み操作 (10,000 件単位) およびデータ書き込み (GB 単位) の料金が適用されます。
  • BLOB をよりホットな層に移動するとき、この操作は移動元の層からの読み取りとして課金され、移動元の層の読み取り操作 (10,000 件単位) およびデータ取得 (GB 単位) の料金が適用されます。 クール層、コールド層またはアーカイブ層から移動された BLOB については、早期削除料金も適用される場合があります。
  • アーカイブ アクセス層から BLOB をリハイドレートするときは、データを復元して BLOB の層をホット、クールまたはコールド アクセス層に変更するまでは、その BLOB のデータにアーカイブ データとしての料金が発生します。

次の表には、各層の変更料金をまとめてあります。

書き込み料金 (操作 + アクセス) 読み取り料金 (操作 + アクセス)
ホットからクール アクセス層
ホットからコールド アクセス層
ホットからアーカイブ アクセス層
クールからコールド アクセス層
クールからアーカイブ アクセス層
コールドからアーカイブ アクセス層
アーカイブからコールド アクセス層
アーカイブからクール アクセス層
アーカイブからホット アクセス層
コールドからクール アクセス層
コールドからホット アクセス層
クールからホット アクセス層

バージョン管理が有効になっている場合、または BLOB にスナップショットがある場合に BLOB のアクセス層を変更すると、さらに料金が発生することがあります。 バージョン管理が有効になっている BLOB については、BLOB のバージョン管理に関するドキュメントの「価格と課金」を参照してください。 スナップショットを含む BLOB については、BLOB のスナップショットに関するドキュメントの「価格と課金」を参照してください。

コールド層

コールド層には、次の最小バージョンの REST、SDK、およびツールが必要です

Environment 最小バージョン
REST API 2021 年 2 月 21 日
.NET 12.15.0
Java 12.21.0
Python 12.15.0
JavaScript 12.13.0
PowerShell (Az.Storage) 5.8.0
Azure CLI 2.50.0
AzCopy 10.18.1
Azure Storage Explorer 1.29.0

機能サポート

Data Lake Storage Gen2、Network File System (NFS) 3.0 プロトコル、または SSH ファイル転送プロトコル (SFTP) を有効にすると、この機能のサポートが影響を受ける場合があります。 これらの機能のいずれかを有効にしている場合は、「Azure Storage アカウントでの Blob Storage 機能のサポート」 を参照して、この機能のサポートを評価してください。

次のステップ