SQL Azure Federationの課金モデル


この記事は、Windows Azure Advent Calendar 2011の16回目です。

さて、Microsoftのさとうさんの記事(SQL Azure 2011年第4四半期サービス リリースが利用可能に)などで報じられている通り、SQL Azure Q4 2011 Service Releaseとして様々な機能等が大幅に増強されました。

その中の一つである、SQL Azure Federationをちょっと試してみようかな?と思い立ったのですが、課金はどうなるんだ??と素朴な疑問にぶつかり少し調べてみました。

課金に関して、MSDN Blog「Your Data in the Cloud」の「Billing Model for Federations in SQL Azure Explained!」という、記事が見つかりましたので、その要約と若干の私感含め記します。

SQL Azureの課金に関する重要な留意事項

1.データベースは日割り課金されます。

2.データベースが1日のうち短期間だけ存在していても1日分課金されます。

3.利用可能状態となっているデータベースだけ課金されます。作成中のデータベースについては課金されず、作成完了しアクセス可能となった状態から課金されます。

Federationの作成

SQL Azure Federationの作成はTSQLでも管理ポータルからでも可能です。管理ポータルを使った例は、MSDN Blogの「Building Large Scale Elastic Database Tiers with SQL Azure: Introducing Federations」等で説明されていますのでご参照ください。また、TSQLについは、MSDNの「Federation Statements (SQL Azure Database)」に同様に説明がありますのであわせてご参照ください。

Federation Root(親DB)と同じ、EDITIONとMAXSIZEを継承した、Federation Member(子DB)が作成されます。例えば、親DBが、EDITION=BUSINESS、MAXSIZE=30GBとした場合、子DBもEDITION=BUSINESS、MAXSIZE=30GBとなります。そして、課金は、30GB×2DB分必要になります。

Federation Memberの課金プロパティの変更

Federation Memberの課金プロパティを変更するには、下記のALTER DATABASE  TSQLで可能です。ただし、親DBの課金プロパティを変更しても、子DBの課金プロパティは変更されませんので、それぞれ個別に変更が必要になります。また、各Federation MemberのEDITION/MAXSIZEは混在可能となっています。例えば、Federation Root(親DB)は、EDITION=BUSINESS、MAXSIZE=30GB、Federation Member(子DB)は、EDITION=BUSINESS、MAXSIZE=50GBなどと言った構成が可能です。

ALTER DATABASE database_name {
MODIFY (<edition_options> [, ..n])
}

<edition_options> ::= {
(MAXSIZE = {1|5|10|20|30|40|50|100|150} GB)
| (EDITION = {‘web’ | ‘business’})
} [;]

 

Federation Memberの再分割

例えば、あるFederation Memberをさらに2つに再分割した場合には、一時的に3つのDB(ソースFederation Memberと分割後の2つのFederation Member)が存在する事になりますので、分割した当日にはこの3つのDB分の課金が発生します。従いまして、むやみに再分割や、やり直しなどを繰り返すと、予期せぬ課金が発生する可能性がありますので注意が必要です。

ソースFederation Memberは分割が完了すると削除されるので、翌日以降は分割後の2つのFederation Member分だけ課金されることになります。

Federation Member数の上限

現在の、SQL Azureにはサーバ当り、500DBまでと言う制限があります。従って、master DBとFederation Root DBを除いた、サーバ当り、498DB分のFederation Memberが作成が可能です。(他にデフォルトでは契約単位に150DBまでと言う上限がありますが、これはMicosoftに依頼する事により解除してもらう事が出来ます。)

例えば、すぐ思いつく分割例として、マルチテナントシステムのDBをテナント毎に分割するなどがあります。この場合には、498テナントが上限と言う事になってしまいます。従いまして、課金についてもですが分割方法も設計時に十分考慮する必要があります。

最後にクラウディアさんから一言お願いしたいと思います。

ご利用は計画的にネ!

広告

One thought on “SQL Azure Federationの課金モデル

  1. ピンバック: Windows Azure Advent Calendar jp: 2011 完成~ « ブチザッキ

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中