Azure Blob Storage は、Microsoft Azure のクラウドストレージサービスの一つで、大量の非構造化データを格納することができます。高い可用性、スケーラビリティ、セキュリティを提供するだけでなく、コスト効率を最大限に引き出すためのソリューションが存在します。
今回は、アクセス頻度と保持期間に基づいてデータ保存コストを最適化する方法をご紹介いたします。

アクセス層とは?                   

Azure Blob Storage には、データのアクセス頻度と保持期間に基づき、最もコスト効率が高い方法で BLOBデータを保存するために複数のアクセス層が用意されています。
それぞれの層で、異なる料金体系を持つことが大きな特徴となります。
下図は4つのアクセス層とその保存コスト、データ操作時コストの関係となります。

例えば、契約書類のように「アクセスはしないけど保存する必要があるデータ」をアーカイブアクセス層に移動することにより保存コストを削減できます。

データの特性に応じて、BLOBデータのアクセス層をきめ細かく操作することによって BLOBデータの保存コストを抑えることが可能です。

具体的なコストは?

それぞれのアクセス層の月々の保存コストは下図のようになります。

※下図の値は、2023年9月現在のものとなります

ホットアクセス層とアーカイブアクセス層を比べると、1GB あたりの保存コストは 1/10 になっています。
また、ホットアクセス層とクールアクセス層を比べても、おおよそ 1/2 にとどまっていることがわかります。


例えば、
【10TB の BLOBデータがすべてホットアクセス層にある場合】
月々の保存コストは \28,252円
【10TB のうち 5TB をクールアクセス層に移動させた場合】
月々の保存コストは \22,060円

この場合、保存データの半分をクールアクセス層へ階層化することで、月々の保存コストを 21%削減 することが可能です。

データのライフサイクル管理

BLOBデータの一つ一つのアクセス層を管理してくためには、大きな手間がかかります。
この問題は、コンテナ/ファイル単位でデータのライフサイクルを定め、アクセス層の管理を自動化することで解決できます。
例えば、ライフサイクル管理によって以下の動作が可能です。

上記の例で紹介させていただいた以上に、より細かいライフサイクル管理を定めることが可能です。

データのライフサイクル管理によって、保存コストを最適化できます。

注意点

アクセス層の見直しについて下記の点に注意が必要です。

  • アーカイブアクセス層へ階層化されたデータは読み取りできない
  • アーカイブアクセス層にあるデータにアクセスするためには”リハイドレート”という手順を経て、読み取り可能なアクセス層に階層化する必要がある
  • ライフサイクル管理を適用するためには2日ほど設定反映に時間がかかる

まとめ

今回は、BLOBストレージのアクセス層とデータのライフサイクル管理についてご紹介いたしました。
システムのクラウド化に伴い、クラウドへデータを保存する機会が増えつつあります。
今後クラウドを活用するにあたり、できるだけコストパフォーマンスを意識したデータ保存がこれからの鍵を握っているのでは、と感じています。
これからも当サイトではさまざまな情報を発信していきたいと考えています。
不明な点等あればお問い合わせください。