19

SQL Azure には、150 GB のデータベース サイズ制限があります。私は彼らのドキュメントを何度か読み、オンラインでも検索しましたが、これについてはよくわかりません: フェデレーションを使用すると、開発者は 150 GB のデータベースを超えて拡張できますか? たとえば、150 GB のフェデレーション メンバーを複数持つことができます。

そうでない場合、Windows Azure で 150 GB を超えるデータベースを処理するにはどうすればよいですか?

基本的に、Windows Azure で 150 GB を超えてスケ​​ールアウトするにはどうすればよいですか

RDS が適切な代替手段である他の方法がない場合 (他の代替手段を共有してください)

4

5 に答える 5

15

現在、150G を超える単一のデータベースを持つことはできません。

唯一の方法は、データを複数のデータベースに分割するか、1 つのアカウントに最大 149 のユーザー データベースとマスター DB を含めるか、SQL Azure フェデレーションを使用することです。現在、私が間違っていなければ、サポートされている連邦の総数は ですInt16.MaxValue - 1。各フェデレーションは、実際には個別のデータベースであり、開発者には透過的であり、最大 150 GB まで可能です。

ただし、SQL Azure フェデレーションには独自の長所と短所があり、データ アクセス レイヤーのリファクタリングもあります。興味がある場合は、SQL Azure フェデレーションに関するクールなビデオをご覧ください。

アップデート

@ryancrawcour に完全には同意しません。彼が説明しているのは、水の下にある氷山の頂点にすぎません。必要なリファクタリングの量は、アプリケーションからデータがどのように消費されるかによって異なります。考慮事項としていくつかの要因について言及します (完全な画像ではありません)。次のいずれかを検討してください。

  • すべてのフェデレーションに共通のデータ (このデータを取得する方法)
  • データを後処理するストアド プロシージャ - フェデレーション メンバーごとに反復し、そのストアド プロシージャを実行する必要があります。ストアド プロシージャを 1 回実行して、すべてのフェデレーションでデータを処理する方法はありません。
  • 複数のフェデレーション メンバーに分散している集計データ
  • 複数のフェデレーション メンバーからのデータを一覧表示します。

これらは、検討する必要がある操作のほんの一部であり、各クエリの前に「接続文字列を変更して、フェデレーションを 1 回実行するだけ」である必要はありません。実際に SQL Azure フェデレーションを使用すると、接続文字列をまったく変更する必要はありません。すべて同じ SQL Azure 接続文字列です。「USE FEDERATION ...」ステートメントは、各クエリの前に実行するものです。しかし、それだけではありません。また、EntityFramework を使用している場合 (モデルが最初かコードが最初かなど) はどうでしょうか。事態はさらに複雑になり、SQL Azure フェデレーションを十分に理解する必要があります。

SQL Azure フェデレーションは、データ、モデリング、および正規化について異なる考え方をしていると言えます。

更新 2 - Microsoft が発表した新しいデータベース サイズ

2014 年 4 月 3 日の時点で、単一データベースの最大サイズが 500GB に引き上げられました。現在入手可能な情報はここだけです。管理ポータルにはまだこのオプションが表示されないことに注意してください (今日現在: 2014 年 4 月 4 日 15:00 GMT+0:00)。

于 2012-09-12T19:49:43.103 に答える
2

最小限の変更でオンプレミスのアプリケーションをクラウドに移行できる、永続的な VM の新しい Azure 機能 (現在プレビュー中) もあります。

詳細情報:サービスとしてのインフラストラクチャ シリーズ: Windows Azure 仮想マシンでの SQL Server の実行このガイドも役立つかもしれません。

編集

これはSql Azureとの比較です

于 2012-09-14T04:05:49.057 に答える
2

私はしばらく前にこれらの同じ答えを探していました。アントンが提供した回答 (非常に正確) に加えて、ロード バランシングとミラーリングによって、SQL Server をインストールした WAVM を冗長化できることがわかりました。

WASD の利点は、すべてが自動化されていることです。たとえば、WAVM インスタンスがロード バランサーのルーティングから除外された場合、新しいインスタンスを自分で立ち上げる必要があります。WASD はこれらすべてを処理します。

WASD フェデレーションを使用すると、75 TB のデータまでスケーリングできますが (私の記憶が正しければ)、WAVM と SQL Server を使用すると、最大 16 TB までスケーリングできます。

また、WASD フェデレーションを使用すると、SQL ワークロードをより細かく分割できます。

よろしく、

パトリック

于 2012-09-14T09:37:56.780 に答える
1

スケール オプションを検討する際は、2014 年 4 月 3 日の時点で、Microsoft が SQL Premium の今後の変更を発表したことに注意してください。これには、各 SQL データベース インスタンスを 500 GB にスケーリングする機能が含まれます (geo レプリケーション、セルフサービス リストア、より高いアップタイム SLA に加えて)。 )。日付はまだ発表されていませんが、発表の詳細についてはこちらをご覧ください。

于 2014-04-03T17:03:51.933 に答える