SAN上のログ(複数のLDF)のデータ(複数のMDF)の共有ボリューム(複数のMDF)と別の共有ボリューム

StackOverflow https://stackoverflow.com//questions/12649589

質問

私は3つのSQL Server 2008のインスタンスを持っています、それぞれが各インスタンス上の複数のデータベースを持つ異なるマシンにあります。MDFファイルとLDFファイルには、SANに2つの別々のLUNがあります。NDXファイルとTEMPDBファイルは各マシンのローカルドライブ上で実行されます。大丈夫ですか。3つのインスタンスがデータファイルの同じボリュームとログファイルの別のボリュームを共有するには?

SAN上でシンプロビジョニングはありませんので、データベースごとにない場合は、インスタンスごとにボリューム(ドライブ文字)を作成する必要があるため、複数のボリュームを作成していません。私は少なくともログとデータファイルを分割する必要があります。インスタンスは実際のデータベースファイルを共有しません。

任意の助けが支払われています。

役に立ちましたか?

解決

もちろん答えは次のとおりです。それが依存するものにいくつかのヒントを与えようとすることができます。

SQL Serverインスタンスは、リソースへの排他的アクセス権を持つことを「仮定」します。そのため、デフォルトで使用可能なすべてのRAMを入力します。すべてのCPUを使用し、最大限のパフォーマンスを得るためにI / Oチャネルを飽和させようとします。これが、一般的なアドバイスがあなたのインスタンスを同じディスクに同時にアクセスするのを避ける理由です。

もう1つのことは、SQL Serverが順次I / OアクセスがランダムI / Oよりもはるかに高いThoughpputを与えることを「知っている」ということです。他の人)ランダムなI / Oをできるだけ回避するために

SQL Serverの3つのインスタンスを同時に単一ボリュームで順次I / Oを要求している場合は、ランダムなI / O要求を再度依頼しているボリュームの観点から、パフォーマンスが低下します。

言っていることは、あなたのI / Oサブシステムが重要なボトルネックであるならば、それだけの問題です。 LogFileボリュームが十分に速い場合、インスタンスからの混在していない順次書き込みが問題を引き起こしていないため、先に進みます。データの読み取りがバッファキャッシュからほとんどの場合に満たされることができる場合に十分なRAMがある場合は、I / Oサブシステムで読み取りパフォーマンスを大幅に必要ありません。

それぞれの場合を避けるべきことは、ログファイルまたはデータファイルの複数の成長ステップです。 1つのファイルシステム上の複数のファイルが成長している場合は、フラグメンテーションを取得し、断片化は単一のソースからランダムI / Oへの順次読み取りまたは書き込み要求を再度変換できます。

SSDをディスクとして使用すると、全体の画像が再び変わります。これらは完全に異なる要件と行動を持っていますが、SSDについて何も言わなかったので、「従来の」ディスクベースの配列またはRAID構成を使用すると仮定します。

ショートサマリー:状況が正しい場合は、それを逃れるかもしれませんが、SANとSQLの両方の観点から、システムについてもっと多くを知らずに評価するのは困難です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top