Windows Azureストレージプログラミング概要
それでは、Windows Azureストレージプログラミングの概要について解説します。
Windows Azureストレージへのアクセス方法
Windows Azureストレージにアクセスする方法は、主に2種類あります。
(1)REST APIを直接使用する
Windows Azureストレージ用のREST API(Windows Azure Storage Services REST API)を、直接呼び出す方法です。
この方法のメリットは、呼び出し側の言語や環境が.NET環境に依存しないことや、Windows Azureストレージの全機能にアクセスできることですが、半面、REST APIの仕様を読み解き自分で実装するというのは、次に述べるライブラリを用いる方法と比べて少々面倒で難易度も高いと言えるでしょう。
REST APIを使用方法については、前連載の第3回と第4回で解説されていますので、これらの記事を参照してください。非.NET言語の環境からWindows Azureストレージにアクセスしたい場合など、直接REST APIを使用するケースもあるでしょう。
REST APIの仕様については、MSDNの「Windows Azure Storage Services REST API Reference」(執筆時点では、英文のみ)から確認することができます。
(2)Windows Azureマネージライブラリを使用する
Windows Azure SDK 1.0(November 2009)以降、Windows Azureストレージへのアクセスを提供するマネージライブラリが正式に含められました。
.NET環境の場合には、このライブラリを使用することにより、REST APIよりも簡単かつ直感的にWindows Azureストレージにアクセスすることができます。
Windows Azureマネージライブラリ
次の表3が示すように、Windows Azureマネージライブラリは、いくつかの名前空間で構成されています。
名前空間 | 説明 |
---|---|
Microsoft.WindowsAzure | ストレージアカウント関連 |
Microsoft.WindowsAzure.ServiceRuntime | Webロールの実行環境の情報 |
Microsoft.WindowsAzure.Diagnostics | ログなどの診断情報の管理 |
Microsoft.WindowsAzure.Diagnostics.Management | リモートでの診断情報の管理 |
Microsoft.WindowsAzure.StorageClient | Windows Azureストレージ・クライアントライブラリ |
Microsoft.WindowsAzure.StorageClient.Protocol | Windows AzureストレージのREST用ラッパー |
これらのライブラリにより、Windows Azureの種々の機能を利用することができます。
Windows Azureストレージへのアクセスのためには、その中でも特に、Windows Azureストレージ・クライアントライブラリ(Microsoft.WindowsAzure.StorageClient名前空間)を使用することになります。
Windows Azureストレージ・クライアントライブラリ
このWindows Azureストレージ・クライアントライブラリについて、もう少し詳しく解説します。
次の表4は、Windows Azureストレージ・クライアントライブラリに含まれる代表的なクラスを示したものです。これを見ると分かるように、各ストレージの階層構造に合わせてクラスが定義されています。なお、各ストレージのルートとなるストレージアカウントを扱うクラスはここに含まれておらず、Microsoft.WindowsAzure名前空間のCloudStorageAccountクラスがそれに相当します。
クラス | 扱うストレージ | 説明 |
---|---|---|
CloudBlobClient | ブロブ | ブロブストレージ |
CloudBlobContainer | ブロブ | コンテナ |
CloudBlob | ブロブ | ブロブ |
CloudTableClient | テーブル | テーブルストレージ |
TableServiceEntity | テーブル | エンティティ |
CloudQueueClient | キュー | キューストレージ |
CloudQueue | キュー | キュー |
CloudQueueMessage | キュー | メッセージ |