Azure Managed Service Column <Azure運用コラム>

Azure Blobの紹介

Category: 入門編

2020.10.28

はじめに

オブジェクトストレージとは、データをオブジェクトという単位で扱う記憶装置であり、ファイルストレージなど、他のクラウドストレージと並んでよく利用されています。このオブジェクトストレージの一種であるのがAzureのBlobストレージです。

AzureのBlobストレージを利用すれば、予期せぬ災害に備えてデータのレプリケーションやバックアップを確実に行なえます。それにより、復旧のダウンタイムを最小限に抑えることが可能です。

AzureのBlobストレージの詳細について、特徴や他のストレージサービスとの違いを見ながら解説していきます。

AzureのBlobストレージの特徴

まずは、AzureのBlobストレージの特徴や、どのような用途に適したサービスかをご紹介します。

AzureのBlobストレージとは?

AzureのBlobストレージとは、Microsoftが提供するクラウド用オブジェクトストレージソリューションを指します。テキストや写真、動画などの非構造化データを、大量に格納するために最適化されたストレージです。

Azure Blob Storageでは、ストレージに保管したデータのことを「BLOB」といい、BLOBを保管する場所を「コンテナー」と呼びます。

AzureのBlobストレージに適した用途

Azure Blob Storageは、以下のような用途に適しています。

  • 画像またはドキュメントのブラウザへの直接配信
  • 動画や音楽のストリーミング配信
  • バックアップや復元のためのデータ格納
  • オンプレミスやAzureで分析するデータの格納

Azure Blob Storageは、 HTTPやHTTPS 経由で世界中のどこからでも、ストレージ内のオブジェクトにアクセスできます。そのため、画像やドキュメント、動画、音楽などの管理・配信に適しています。

また、大容量データの保存に適しているため、バックアップデータやオンプレミスなどで分析するビッグデータの格納にも利用することが可能です。

AzureのBLOBストレージ内の3つのリソース

Blobストレージ内のリソースには、以下の3つがあります。

  • ストレージアカウント
  • ストレージアカウント内のコンテナー
  • コンテナー内のBLOB

それぞれについて詳しく解説していきます。

ストレージアカウント

所定のストレージに格納したデータから一つの情報を特定するためには、オブジェクトに対してアカウント名が記載されたアドレスが割り当てられます。

なお、ストレージアカウントには、汎用v2アカウント、汎用v1アカウント、BlobStorageアカウント、FileStorageアカウント、BlockBlobStorageアカウントの5つがあります。

それぞれのストレージアカウントの概要は以下の通りです。

  • 汎用v2アカウント:BLOB、ファイル、キュー、テーブル用の基本的なストレージアカウント
  • 汎用v1アカウント:BLOB、ファイル、キュー、テーブル用の従来のアカウント。汎用v2アカウントを使用できる場合もある
  • BlobStorageアカウント:従来のBLOB 専用のストレージアカウントだが、可能な場合は汎用 v2アカウントを代用する
  • FileStorageアカウント:Premium パフォーマンスの特徴を持ったファイル専用ストレージアカウント
  • BlockBlobStorageアカウント:ブロックBLOBと追加BLOBのPremiumパフォーマンス特性を持ったストレージアカウント

コンテナー

コンテナーはストレージアカウント内にあり、BLOBを保管する場所を指します。ファイルシステムにおけるディレクトリのような構造になり、BLOB のセットを整理する際に使用します。コンテナーは、ストレージアカウントに無制限に入れることが可能です。

BLOB

BLOBはストレージに保管されたデータのことで、1つのコンテナーに対し制限なく格納することができます。

なお、BLOBには、バイナリデータと約4.7TBまでのテキストが格納可能な「ブロックBLOB」、仮想マシンのログ記録などに適した「追加BLOB」、最大8TBのランダムアクセスファイルを格納できAzure仮想マシンとして用いられる「ページBLOB」の3つがあります。

Blobストレージの利用方法

Blobストレージへデータを置く方法には、Microsoft Azure Storage Exploreを使用する方法と、AzCopyツールを使用する方法があります。

Microsoft Azure Storage Exploreを使用する方法

  1. Microsoft Azure Storage Exploreを起動する
  2. 「アカウントの設定」内にある「アカウントの追加」アイコンをクリックし、アカウントの資格情報を入力する
  3. 「Azure Storageへ接続」アイコンをクリックし、ウィザードを起動したらアカウントのアクセスキーを入力して次に進む
  4. 「アカウント名」ボックスにアカウント名を入力し、次に進む
  5. 追加されたストレージアカウントが表示されたら「BLOBコンテナー」ノードを右クリックし、「BLOBコンテナーの作成」を選択する
  6. データをアップしたいBLOBコンテナーを選択し、「アップロード」ボタンをクリックしてファイルをアップロードすれば完了

なお、データをダウンロードする場合は対応するコンテナーのBLOBを選択し、「ダウンロード」をクリックすると、簡単にBlobを取り出すことができます。

AzCopyツールを使用する方法

AzCopyは、ストレージアカウント間のデータをコピーする際に利用できるコマンドライン ユーティリティです。

BLOBは常にコンテナーにアップロードする必要があるため、はじめにコンテナーを作成しておきましょう。AzCopyを使用すると、Windowsや Linux 上の Blob Storageにフォルダー内の全ファイルをアップロードすることが可能です。また、フォルダー内の全BLOBをアップロードするためには、特定のAzCopyコマンドを入力することになります。

他社のストレージサービスとの比較

AzureのBlobストレージと類似のストレージサービスに、Amazon S3、Google Cloud Storageがあります。ここでは、3つのストレージサービスを料金やストレージ容量などを条件ごとにまとめました。

条件 Azure Blob Storage Amazon S3 Google Cloud Storage
ストレージ料金 2.24円/GB $0.025/GB $0.023/GB
容量上限 200ストレージアカウント×
500TB/ストレージアカウント
(申請によって上限5PB まで
引き上げ可能)
無制限 無制限
オブジェクト数上限 無制限 無制限 無制限
1オブジェクト容量上限 4.77TB 5TB 5TB

(※上記は 2020年10月時点での内容です。)

大まかな項目を見ると、料金や上限などにそれほど違いはありませんが、3つのサービスにおけるデータの冗長性には異なる点があります。それは、Azure Blob Storageのgeo 冗長ストレージ (GRS)には、リージョンやデータセンターの機能が停止してもデータが失われないというメリットがある点です。

通常、運用しているときは、データ同期先にユーザーがアクセスすることはできません。しかし、 自然災害などでリージョンやデータセンターがアクセス不能になった場合、マイクロソフトが同期先に切り替え作業を行ないます。この際、アプリケーション側は、接続先を自分で変更する必要はないのです。

また、Azure Blob Storageの読み取りアクセスgeo冗長ストレージでは、同期先に読み取り専用でアクセスすることができます。ただし、障害発生時にマイクロソフトが同期先への切り替えを行なう際には、同期先へのアクセスが一時的に不可能となります。

Amazon S3 の クロスリージョンレプリケーション (CRR)は、特定のバケットで行なわれた操作を、別のバケットで同じことができるというレプリケーションです。一方のバケットが機能停止した場合、AWS が自動的に別のバケットにつないでくれることはありません。つまり、災害発生時にバケットを変えるのはアプリケーション側になるのです。

そして、Google Cloud StorageのレプリケーションであるRegional Storageは、リージョン内でデータを複製するものであるため、リージョン全体に障害が発生するとアクセスは不可能になります。

このようにレプリケーションに注目すると、災害時にリージョンが機能停止した場合の対応が大きく異なります。料金はそれほど差がありませんが、緊急時にもアプリケーション側の作業が少ないほうが安心できるでしょう。

おわりに

Azure Blob Storageは、自然災害などの万が一の場合に備えたり、動画コンテンツを配信したり、分析したビッグデータを格納したりと、さまざまな活用法が考えられます。申請すれば容量など拡張もできるため、社内の状況に合わせて使用できることも大きなメリットです。

ストレージサービスを比較する際には、料金やストレージ容量だけでなく、緊急時のアクセスなども考慮して導入しましょう。

Azure Blob の機能については、「Azure ストレージが提供する4つのサービスを紹介 (Azure Blob)」で「ファイルのアップロード・ダウンロード」「ネットワークによるアクセス制限」「データ保護」「ライフサイクル管理」にフォーカスして紹介します。合わせて読んでみてください。

Tag: Azure Blob

関連記事

Contactお問い合わせ

お見積もり・ご相談など、お気軽にお問い合わせください。

single.php