LoginSignup
2
2

More than 3 years have passed since last update.

【Azure】Blob Storage のライフサイクルについて

Posted at

Azure Blob Storage のライフサイクルで出来ること

この度、仕事で Azure Blob Storage のライフサイクル機能を利用することになり、その際に調べた内容となります。

まずは、何事も公式のドキュメントを確認です。
Microsoft 社のドキュメントには以下のように記されています。
Azure Blob Storage アクセス層の自動化によるコストの最適化

・パフォーマンスを最適化するためにアクセスされた場合、BLOB をクールからホットに直ちに移行する
・コストを最適化するために、一定期間にわたってアクセスも変更もされていない場合、BLOB、BLOB のバージョン、BLOB のスナップショットをよりクールなストレージ層に移行する (ホットからクール、ホットからアーカイブ、またはクールからアーカイブ)
・ライフサイクルの最後に BLOB、BLOB のバージョン、BLOB のスナップショットを削除する
・ストレージ アカウント レベルで 1 日に 1 回実行されるようにルールを定義する
・コンテナーまたは BLOB のサブセットにルールを適用する (名前のプレフィックスまたは インデックス タグをフィルターとして使用)

Azure Portal からライフサイクルを設定する

■ライフサイクルの作成
image.png

・ルールの範囲
Storage アカウント全体、もしくは指定したBlobを対象にルールの範囲を設定することができる。

・BLOB の種類
ルールの対象となる Blob の種類を複数設定することができる。

・BLOB のサブタイプ
基本 BLOB / スナップショット / バージョン の中から複数を対象に設定することができる。

image.png

・最終更新日
最終更新日から○日経過した、Blob を対象に設定することができます。

・結果
削除及び、アーカイブの設定をすることができます。

image.png

検証

利用するにあたり、簡単な検証を行いました、
ライフサイクル機能を使用する場合、以下の要件が考えられます。
・「365日間更新がない場合、削除を行いたい」
・「30日間更新がない場合、アクセス層をクール層へ変更したい」
仮に30日間更新がない場合アクセス層をクール層へ変更したい場合、ライフサイクルの最終更新日の設定項目には、30 と設定したらよいのか、31 と設定したら良いのか、気になりました。

Azure の処理が24時付近、日付ベースで処理が実行されるのか、それとも時間ベースで処理が実行されるのか、Azure の処理がいつ行われているのか確認します。

・ライフサイクルの設定
・最終更新日:1
・結果:クール層へ移動

・sample Blob を作成
image.png

image.png

・結果
最終更新日を含めた、最終更新日時から24時間経過後にホット層からクール層へアクセス層が変更されていることが確認できました。

image.png

保存期間を時間ベースで判定していることから、「30日間の保存を行った後に削除」といった要件では、データの保有したい期間+1日と設定することがMASTとなりそうです。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2