Azure Blob Storageの基本
Azure Blob Storageの概要
- テキストやバイナリなどの非構造化データを大量に格納するために最適化されたオブジェクトストレージ
- AWSのS3に相当する
- 3種類のリソースが存在する
- ストレージアカウント
- 格納するデータの用の一位の名前空間
- エンドポイントのベースアドレスに組み込まれる
- e.g. ストレージアカウントが
mystorageaccount
の場合はエンドポイントはhttp://mystorageaccount.blob.core.windows.net
のようになる
- e.g. ストレージアカウントが
- コンテナ
- BLOBセットを整理するための区切り
- ファイルシステムのディレクトリに相当する
- BLOB
- 保存するデータ
公式より引用
- 保存するデータ
- ストレージアカウント
実際に使ってみる
ストレージアカウントの作成
Azure Portalからストレージアカウン作成ページに遷移する。
ストレージアカウントの作成をクリックする。
アカウント基本情報を入力する。
- リソースグループは複数のリソースを管理できる単位
- リソースグループを削除するとグループ配下のリソースがすべて削除されるので、ライフサイクルが同じリソースをまとめるのに利用する
- 例えば、プロジェクト単位でまとめるなど
- 冗長性は4種類から選択可能
- プライマリリージョンの単一のAZでのみレプリケートする
ローカル冗長ストレージ
- プライマリリージョンの複数のAZでレプリケートする
ゾーン冗長ストレージ
- プライマリリージョンの単一のAZとセカンダリリージョンでレプリケートする
geo冗長ストレージ
- プライマリリージョンの複数のAZとセカンダリリージョンでレプリケートする
geoゾーン冗長ストレージ
- 詳しくは公式に記載されてる
- プライマリリージョンの単一のAZでのみレプリケートする
以降の設定は要件によって設定異なるが、今回はデフォルトで設定する。
アカウントの作成ボタンを押下してからデプロイが完了するまでしばらく待つ必要がある。
コンテナーの作成
作成したアカウントのメニューからデータストレージセクション内にあるコンテナーを作成してコンテナー作成ボタンを押下する。
コンテナー名を入力、今回はパブリックアクセスレベルをBLOBにしてコンテナーを作成する。
パブリックアクセスレベル
ストレージの情報をパブリックに公開するかどうかを制御する。
前提として、アカウントの設定でBLOBパブリックアクセスを許可する
を無効にしている場合はコンテナーのアクセレベル設定によらず、パブリックアクセスはできなくなる。
アカウントの設定で、アカウントの設定でBLOBパブリックアクセスを許可する
を有効にしている場合、コンテナーのアクセルレベル設定に応じて、パブリックアクセスが制限される。
- プライベート(既定)
- パブリックアクセスは許可されない
- BLOB
- BLOBにはアクセスできるがコンテナーにはアクセスできない
- コンテナー
- BLOBにもコンテナーにもアクセスできる
BLOBにアクセスできる、ということはhttps://{アカウント名}.blob.core.windows.net/{コンテナー名}/{BLOB名}
のようなURLから誰でもBLOBにアクセスできる。例えば、BLOBが画像の場合は画像を取得できる。
コンテナーにアクセスできる、ということはhttps://{アカウント名}.blob.core.windows.net/{コンテナー名}/{BLOB名}?restype=container&comp=list
のようなURLから誰でもコンテナーの情報にアクセスできる。
BLOBのアップロードとアクセス
作成したコンテナーの画面からBLOBをアップロードする。
アップロードされたBLOBの詳細ページに記載されているURLからBLOBにアクセスできる。
Discussion