現在のところ、単一を持ってすることはできません150Gを超えるデータベース
のみのアプローチは、複数のデータベースにデータを分割するかで、1アカウントには、最大149個のユーザーデータベースに加えて、マスタDBを持っている、またはSQL Azureの連盟を使用することができます。現在、私が間違っていない場合、サポートされている連合の総数はInt16.MaxValue - 1
です。各連合は、実際には開発者にとって透過的な別個のデータベースであり、最大150GBまで可能です。
ただし、SQL Azureの連盟は、いくつかのデータアクセス層の再ファクタリングと一緒に、独自の長所と短所を持っています。あなたが興味を持っている場合は、SQL Azureの連盟でこれらのクールなビデオをチェックアウト可能性があります
UPDATE私は完全に@ryancrawcourに同意しないだろう
。彼が説明しているのは、氷に覆われた氷山のピークに過ぎません。必要な再ファクタリングの量は、実際にアプリケーションからデータがどのように消費されるかによって異なります。私は考慮すべきいくつかの要素について言及します(完全な画像ではありません)。 - あなたは各反復処理し、これまでのフェデレーションメンバーと実行する必要があり、すべての連盟のための共通です
- データ(あなたはこのデータを取得する方法)
- ストアドプロシージャ、その後処理データ:次のいずれかを考えてみましょうそのprocを格納します。 Stored procを一度実行して、すべての連合でデータを処理する方法はありません。
- 2人以上のフェデレーションメンバーにまたがって集計されたデータ
- 複数のフェデレーションメンバーからのデータを一覧表示します。
これは、考慮する必要があり、各クエリの前に「接続文字列を変更して1つの使用フェデレーションを実行する」必要はありません。実際にSQL Azureフェデレーションを使用すると、接続文字列をまったく変更する必要はありません。これは、すべて同じSQL Azure接続文字列です。 "USE FEDERATION ..."ステートメントは、各クエリの前に実行したステートメントです。しかしそれは単なる事ではない。そして、EntityFrameworkを使用しているかどうか(モデルの最初のものか、コードのものかなど)状況はさらに複雑になり、SQL Azureフェデレーションを実際に理解する必要があります。
私は、SQL Azureの連盟は、モデリングと正規化については、データについて考える別の方法であると言うでしょう。
UPDATE 2 - マイクロソフト 03. 2014年4月単一データベースの最大サイズのよう
が発表した新しいデータベースのサイズが500ギガバイトに増加されました。現在利用可能な情報はis hereです。管理ポータルにはこのオプションが表示されないことに注意してください(現在および現在:4. Apri 2014、15:00 GMT + 0:00)。
注 - 2014年4月3日現在、データベースあたり500GBの上限があります。これを反映して、以下の回答を掲載しました。 –
注:先週の時点で1 TBですが、(高いDTUの場合)コストが非常に高くなる可能性があります。 –