MongoDB on Azure(&Node.js)
「MongoDB」のAzure対応状況が少し気になったので調べてみました。
- MongoDBサイトのAzureページ
MongoDBサイトの説明は、アルファ版という扱いで、Gitからソースをとって、MongoDBのバイナリをダウンロードして設定ファイルをいじってという感じでした。
とはいえ、Node.jsのAzure対応もあるし、もう少し簡単なやり方は無いかなと見ていたら、Azure本家サイトに公開されていました。
- WindowsAzure.com
こちらは、Node.jsとの連携前提ですが、PowerShellのコマンドレットを使ってセットアップできるようになっていました。PowerShellを使って、Azureプロジェクトをセットアップできます。
PowerShellコマンド | 内容 |
---|---|
Get-AzureMongoDBBinaries | ローカルにMongoバイナリをダウンロード |
New-AzureService tasklistMongo | Mongoソリューション作成 |
Add-AzureNodeWebRole | Node.jsのWebRoleを追加 |
Add-AzureMongoWorkerRole | MongoDBのWorkerRoleを追加 |
Join-AzureNodeRoleToMongoRole WebRole名 | NodeとMongoを接続 |
チュートリアル的に書かれているので難しくなさそうでした。アプリケーションの作成方法は、ふつうのNode.js+MongoDBアプリケーションと同じようです。
また、以下のサイトはサンプルも公開されていて面白かったです。
ここの解説によると、MongoDBのWorkerRoleは、AzureDrive(PageBlob)をデータ保存領域として使うそうです。
ちなみにNode.jsのSQL Azure対応はされないのでしょうかねぇ。MySQLを使うのかなぁ。