AWSとAzure、まずはプロフィールを比較する:PHP開発で使える2大クラウドを徹底検証(1)(3/3 ページ)
クラウド上でのJavaやRuby、.NETを利用した開発についての記事は増えてきていますが、クラウド上でのPHP利用に関する記事は、現時点では意外と少ないです。本連載では、PHP開発で利用することを前提に、Amazon Web Services(以下、AWS)とWindows Azureの2大クラウドを比較します。PHPのエンジニア以外でも参考になる内容になっていると思いますので、ぜひお読みください
サービスの大まかな比較
さて、AmazonとAzureの概要について紹介してきましたが、AmazonとWindows Azureの各サービスがそれぞれどれに対応するのか、見てみましょう。表xのようになります。
ちょっと前まではAWSが先行しているイメージがありましたが、Windows Azureもサービスを増やしてきており、AWSに負けないぐらいのサービスを提供してきています。特にデータベースやサービスバスについてはAWSはβ版ですが、Windows Azureは正式版を提供するなど、優れている部分も見受けられます。
サービス内容 | AWS | Windows Azure |
---|---|---|
インスタンスサービス | Amazon EC2 | コンピュートサービス |
ストレージサービス | Amazon S3/EBS | ストレージサービス |
VPN | Amazon VPC | Windows Azure Connect* |
データベースサービス | Simple DB/Amazon RDS* | SQL Azure |
負荷分散 | Elastic Load Balancing | Windows Azure Traffic |
キャッシュ | Elastic Cache | AppFabric(キャッシュ) |
アクセスコントロール | セキュリティグループ | AppFabric(アクセスコントロール) |
サービスバス(メッセージング) | Amazon SNS* | AppFabric(サービスバス) |
MapReduce | Elastic MapReduce | Hadoopサポート |
開発環境 | Redmine、TracなどのAMI(仮想マシンイメージ)が利用可能 | TFS on Azure |
*印はベータ版、CTP版を示す | ||
表3 AWSとAzureのサービス対応表 |
料金
クラウドサービスの利用料金については、AWSではAmazon EC2料金表(に、Azureでは Windows Azure 価格情報に詳しく書いてありますが、インスタンスサイズで掛かる基本料金のほか、ストレージやネットワークにかかる料金が設定されていて、実際にシステムを運用していてどの程度料金がかかるのかいまひとつピンと来ません。ここでは、Webサイトやブログのサイトのモデルを考えて、料金を比較してみましょう。
見積条件
今回見積もるサイトの条件は下記の通りとします。
1カ月当たりのPV:50万PV
データベースサイズ:5GB
1ページ当たりの平均サイズ:0.5MB
1ページ当たりの平均ファイル数:20個
1カ月の通信料とI/O数
見積もり条件から、通信料とI/O数を下記のとおりと仮定します(実際の数値とは異なります)。
通信料(*1):250GB
I/O数(*2):1000万回
*2: 1ページ当たりの平均ファイル数×1カ月当たりのPV
(実際にはメモリ上にキャッシュされI/Oが発生しなかったり、1ページに対し複数アクセスが発生する可能性もある)
価格
AWS:2697.33円(マイクロインスタンスを年間契約したときの1カ月当たりの価格で算出。為替は1ドル=80円で計算)
項目 | 単価 | 数量 | 価格 |
---|---|---|---|
m1.micro | 23ドル/年 | 1台 | 153.33円/月 |
EBS | 0.1ドル/GB | 8GB | 64円/月 |
I/O数 | 0.1ドル/100万I/O | 1000万I/O | 80円/月 |
ネットワーク | 0.12ドル/1GB | 250GB | 2400円/月 |
合計 | 2697.33円/月 |
Azure:6083.7円(6カ月プランを契約したときの1カ月あたりの価格で、2012年1月時点の価格表より算出)
項目 | 単価 | 数量 | 価格 |
---|---|---|---|
XSインスタンス | 3.5円/時間 | 1台 | 2520円/月 |
ストレージ | 12.24円/GB | 5GB | 61.2円/月 |
I/O数 | 0.88円/1万I/O | 1000万I/O | 880円/月 |
ネットワーク | 10.49円/1GB | 250GB | 2622.5円/月 |
合計 | 6083.7円/月 |
一番安いパターンでは、AWSの方が安いという結果になりました。システム構成は、AWSは1台のインスタンスにWebサーバとMySQLを全て載せており、負荷分散やバックアップなどは行っていません。Azureでも1台のインスタンスにWebサーバとMySQLをすべて載せており、負荷分散やバックアップ等は行っていませんが、ストレージサービスに格納されたデータは自動的にデータセンタをまたいで複製されます(Geo-Replication)。
今回の評価では、運用性やパフォーマンスなどは考慮していないので注意してください。パフォーマンスの比較や運用性などは今回は比較は行っていません。このあたりについては後の回で見ていきたいと思います。
なお、Azureには90日間の無料枠があり、AWSには1カ月につきある条件までの無料枠があります。詳細についてはAWS無料使用範囲やWindows Azure Platform の評価版の取得をご覧ください。
さて、今回は初回ということで、AWSとWindows Azureの復習と機能、価格の比較をしてきました。Windows Azureの方が後発で機能が少ないと思われがちですが、AWSに匹敵し、データベースに関してはSQL Azureが既に正式サービスを開始するなど、AWSに先行している機能も見受けられました。
また、価格の比較では、最小構成のモデルではAWSの方が格安なことが分かりました。ただし、性能や運用性などの面は、今回では比較対象に入っていない点をご了承ください。後の回では、性能や運用性を含めた比較を行い、同程度の性能や運用性を考慮した環境ではどうなるか見ていきたいと思います。
次回は、PHPアプリケーションの開発環境と実行環境に焦点を当てて比較をしていきたいと思います。
Copyright © ITmedia, Inc. All Rights Reserved.