Azure ストレージアカウントについて

はじめに

Azure(アジュール)で提供しているクラウドサービスの中に存在する、Azure Storage(アジュール ストレージ)。Azure Storageでは、数種類のストレージアカウントが提供されているのですが、一体どれを使えばいいのか分からず、悩んでいらっしゃる方も多いのではないのでしょうか。どのようなシステムなのか、分かりやすく紹介していきます。

Azureについて

そもそもAzureとはどのような製品なのでしょうか。Azure ストレージアカウントの説明を始める前に簡単に紹介します。Azure(アジュール)は、Microsoft Azureのことを指しており、Microsoft社が提供するクラウドサービスの集合体のことです。クラウドサービス自体は他社にも存在しますが、Azureの特徴としてクラウドプロバイダーを比較した際、データセンター設置地域が多いことが一つ挙げられます。また、明確なセキュリティやプライバシーの要件を定義しながらも、それを確実に遵守し続け業界をリードしていることが強みと言えるでしょう。

Azure Storageについて

一般的にストレージは、パソコン内で長期間データを保存するために必要な補助記憶装置のことを指します。自身の環境や使い方に合うものは何なのか、メリットやデメリットをしっかり見極めた上でストレージを選ぶことが、必要となるでしょう。Azureは元々クラウドサービスの集合体なのですから、Azureで提供しているものはオンラインを介したクラウドストレージ(オンラインストレージ)に当たります。しかし、ストレージサービスといっても、4種類に分かれています。どれが適切なのか、混乱する方は多いのではないでしょうか。かといって、1つ1つ中身を調べていくのでは、時間と手間がかかります。そこで、Azure ストレージアカウントの話の前にそれぞれの内容を大まかに紹介します。

ストレージタイプ

■Azure Blob Storage

オブジェクトストレージで、「オブジェクト」という単位でデータは保管されています。テキストデータやバイナリデータなど、大量の非特定のデータモデルや定義に従っていないデータを格納するために最適です。このBlob Storageは、ストレージアカウント、ストレージアカウント内のコンテナー、コンテナー内のBLOBの3種類のリソースがあります。

■Azure Files

ファイルストレージで、Server Message Block (SMB) プロトコルに対応し、完全に管理されたファイル共有ができます。Azure Filesを使用することで、オンプレミスのファイルサーバーの置換または補完、ファイルアプリケーションやユーザーデータをファイル共有に保存、クラウドにアプリケーションを簡単に “リフト アンド シフト” 、新しいクラウド開発プロジェクトを簡略化することが可能になります。

■Azure Queue storage

信頼性の高い多数のメッセージを格納するためのサービスです。HTTPまたはHTTPS を使用することで、認証された呼び出しを介し世界中のどこからでもアクセスが可能になります。また、キューメッセージの許容されるサイズは最大 64 KB で、ストレージアカウントの総容量の上限を超えない限り、1 つのキューに数百万件のメッセージを格納することができます。

※キュー:一般的に非同期的な処理用に作業のバックログを作成するため使用される。段階ごとに個別のスケーリングをすることが可能になり、チューニングの自由度が高まるといったメリットがある。

■Azure Table Storage

スキーマレスでデータを容易に修正できるNoSQLデータベースです。従来のSQLと比較すると、同じ容量のデータでも低コストで保存することができます。また、様々な種類の柔軟なデータセットを格納でき、ストレージアカウントの容量の上限を超えない限りテーブルに任意の数のエンティティを保存できるといったメリットがあります。

※非リレーショナルデータ:従来のほとんどのデータベースシステムで使用されている、行と列のテーブルスキーマを使用しないデータベースのこと。

Azure ストレージアカウントについて

Azure Storageには、数種類のストレージアカウントがありますが、それぞれサポートする機能や価格が異なります。また、作成するストレージ アカウントの種類に応じて、パフォーマンス レベルが存在します。汎用ストレージアカウントはStandard と Premiumから選択できますが、BlockBlobStorage アカウント、FileStorage アカウント、BlobStorage アカウントは固定されており選択はできません。では、適切なアプリケーションを選択するために、サポートされている内容とメリットを紹介していきます。

■汎用 v2 アカウント

BLOB、ファイル、キュー、およびテーブル用の基本的なストレージ アカウントです。汎用 v1 とBLOB ストレージアカウントのすべての機能が組み込まれています。ギガバイトあたり容量の最低価格を提供しています。サポートしているAzure Storage サービスは次のとおりです。BLOB (すべての種類:ブロック、追加、ページ)、Data Lake Gen2、ファイル、ディスク、キュー、テーブル。

■汎用 v1 アカウント

BLOB、ファイル、キュー、およびテーブル用の従来のアカウントです。すべてのAzure Storage サービスにアクセスできますが、最新の機能が利用できなかったりGB 単価もやや高い傾向にあります。サポートしているAzure Storage サービスは次のとおりです。BLOB (すべての種類)、ファイル、ディスク、キュー、テーブル。汎用 v2 アカウントに簡単にアップグレードできます。

■BlockBlobStorage アカウント

Premium パフォーマンス レベルで、非構造化オブジェクト データをブロック BLOB または追加 BLOB として格納することに特化したストレージ アカウントです。汎用 v2 アカウントと比較すると、待ち時間が一貫して低く、高いトランザクション レートが可能になります。しかしながら、ページ BLOB、テーブル、もしくはキューはサポートされません。

■FileStorage アカウント

Premium ファイル共有の格納と作成に特化したストレージ アカウントです。ファイルはサポートされているのですが、ブロック BLOB、追加 BLOB、ページ BLOB、テーブル、およびキューはサポート対象外になります。また、固有のパフォーマンスに特化した特性が提供されています。(IOPS バーストなど)

■BlobStorage アカウント

従来のBLOB 専用ストレージ アカウントです。汎用 v2 アカウントに簡単にアップグレードできます。

まとめ

Azure ストレージアカウントについて、少し見えてきましたでしょうか。汎用 v1と BLOB ストレージ アカウントは汎用 v2 アカウントに簡単にアップグレードできるため、基本的なシナリオでの使用は汎用 v2 アカウントをおすすめします。また、ブロック BLOB 用に存在するデータ アクセス層、ストレージ アカウントの名前付け、冗長オプションなど細かいシステムや注意すべき点も数多く存在します。

実際に使用する環境や緊急性など総合的に判断し、自分に適したサービスを見つけていってください。

参考文献:
https://docs.microsoft.com/ja-jp/azure/storage/common/storage-account-overview

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です