はじめに
シリーズ第1回、第2回では、Windows Azureの基礎知識や、実際にアプリケーションを作成して、Windows Azureのクラウド環境に配置する方法を理解しました。
今回は、次回と2回に分ける形で、Windows Azureにおけるストレージ環境である、Windows Azure Storageについて扱います。
前編となる今回は、Windows Azure Storageの概要について説明します。そして、REST APIを使用してWindows Azure Storageにアクセスするサンプルアプリケーションを作成してみます。今回はサンプルのローカル環境での実行とクラウド上への配置までで、次回の後編で、REST APIの使用法を含めた具体的なコード説明を行います。
対象読者
- Windows Azureに初めて触れる方
- Visual Studio 2008利用者
- Windows Azure Storageに初めて触れる方
- Windows Azure StorageへRESTでアクセスしたい方
必要な環境
シリーズ第1回、第2回を参考にして、Windows Azureの開発環境のインストール、そしてクラウド環境に配置するために必要なAzure Services Developer Portalのアカウント作成とトークン取得を行ってください。
Windows Azure Storageの概要
Windows Azure Storageは、Windows Azureに含まれるストレージサービスです。クラウド上のファイルシステムと考えると分かりやすいでしょう。しかし、文字通りのファイルシステムとは違い、物理的なファイルシステムやサーバー構成を意識する必要はありません。AzureではHTTP経由のREST(REpresentational State Transfer)インターフェイスを使用してストレージにアクセスします。
このRESTによるインターネット越しのアクセスにより、Windows Azure Storage側では、実際のサーバー構成やデータ配置を隠蔽することができ、可用性や拡張性に富んだ設計となっています。
また、RESTの使用により、開発者は必ずしも.NET Frameworkの開発環境を用いる必要はなくなり、他の言語や環境からでもWindows Azure Storageへアクセスすることができます。
Windows Azure Storageは、SQL Serverのようにリレーショナルデータを扱うのではなく、非リレーショナルなブロブ、テーブル、キューという3種類のストレージをサポートしています。他のクラウドサービスにおける(同じく非リレーショナルなデータを扱う)Google App EngineのBigTableやAmazon S3に相当するものと考えると理解しやすいでしょう。
それでは、Windows Azureではリレーショナルデータは扱えないのかと言うと、そういう事ではありません。マイクロソフトはAzure Services Platformに含まれるサービスの一つとして、Microsoft SQL Azure(執筆時点の2009年7月に、今までのSQL Servicesから名称が変更)を発表しています。Microsoft SQL Azureは、Windows Azureにデータベース機能を提供します。これにより、クラウド上においてリレーショナルデータを扱うことができます。なお、このMicrosoft SQL Azureとその中でもデータベース本体の機能を提供するMicrosoft SQL Azure Database(SQL Data Servicesから名称変更)については、以降の記事で詳しく取り上げます。