web-dev-qa-db-ja.com

同じサーバー上で複数のSQL Serverインスタンスを使用してスケールアウトすることは有利ですか?

3つのタイムゾーンにまたがる9つのデータベースのユースケースの場合、同じサーバー上の複数のSQL Serverインスタンスにデータベースを分散するのは有利ですか。

何を獲得し、何を失うか?タグ付きsql-server-2012それが最も適切であるためです。ただし、一般に問題はSQL Serverのバージョン全体です。

6
孔夫子

いいえ、いいえ、またいいえ。 1つのインスタンス、1つのサーバー、常に。その理由は、SQL ServerのメモリマネージャーとCPUスケジューラのアーキテクチャに関係しています。それ自体がボックス全体を持ち、ボックスで他に何も実行されていない場合、それは本当に最もよく機能します。リソースの「パーティショニング」(最大サーバーメモリ、アフィニティマスク)は、いくつかの問題を解決し、さらに導入します。

統合する場合は、1つのインスタンスに統合します。

必須別のインスタンスを保持する場合、はるかにはるかに優れたオプションは、Hyper-VとVMのパーティション分割です。 VMはリソースをより厳密に制御でき、他にも多くの利点があります。 IOパスを直接VM(VHDにDBなし))に公開できる必要があります。

11
Remus Rusanu

頭に浮かぶのは、いくつかの「利益」だけです。まず、セキュリティです。 何らかの理由でログインでインスタンスに対する昇格された権限が必要でしたが、機密データベースがある場合、それは潜在的に複数のインスタンスが同じ箱。

もう1つは、他の利用可能なサーバーがない場合、異なるアプリケーションをサポートするための異なるSQL Serverバージョンの要件です。

損失に関しては、複数のインスタンスが同じリソースを共有する必要があります。もちろん、簡単に分離できますが、それが1つのインスタンスである場合は、最大スペックを取り除きます。

2
Thomas Stringer

遅い投稿ですが、複数のインスタンスに関して利用できる良い情報は多くありません。

Always Onに起因するスピンロックの問題を回避するために、SQL Serverの複数のインスタンスをインストールするようにMSから助言されました。ただし、SQL Serverインスタンスの下にあるため、クラスタリングサービスのプッシュロックには役立ちませんでした。

1
Brett Shearer

同じサーバーに複数のSQL Serverインスタンスをインストールして、次のようなサーバーレベルの設定を調整します。

  • インスタンスあたりのメモリ
  • リストアイテム
  • CPU

  • インスタンスごとのアフィニティ

  • サーバーレベルのセキュリティ設定(多くの場合、コンプライアンスに優れています)

より包括的なリストについては、以下にアクセスしてください。 http://technet.Microsoft.com/en-us/library/cc966454.aspx

OLAP and OLTP=環境ですが、どういうわけか同じサーバー上にあります。マルチノードフェイルオーバーの場合を考えてみましょう。両方をサポートしています。 1台のサーバー上のノードで、アフィニティマスクとRAMインスタンスあたりの合計量)を設定することで、レポートが後部座席を取りながら、顧客が引き続きデータを処理(および$$$)できるようにします。

0
Ali Razeghi

テストを除いて、1つのHWサーバーにSQL Serverの複数のインスタンスをインストールしたことはありません。上記の複数インスタンスの理由は多かれ少なかれ当てはまりますが、巨大なデータベースがある場合でも、複数のHWサーバーが必要になる可能性があります。

実稼働の観点からSQLインスタンスIMOを使用する2つの大きな利点

  • データベースインスタンスで特別な状況が発生した場合は、ホットフィックスを使用して個々のインスタンスにパッチを適用できます。
  • スタックした場合、個々のインスタンスを再起動できます(ロック状態)。

ただし、サービスパックをインストールする必要がある場合は、インスタンスごとに実行する必要があるため、個別のインスタンスはまだ使用していません。

0