いくつかのHyper-VクラスターにLUNを提示するNetAppストレージシステムがあります。 2008 R2でシステムパフォーマンストレース(perfmon)を実行すると、「高レベルのスプリットI/O」に関する警告が表示されます。スプリットI/Oを調べてみると、これはドライブの断片化が原因である可能性が高いことがわかりました。
ドライブが従来の意味で断片化されているとは信じがたいです。なぜなら、すべてが仮想であるためです(LUN上の仮想ハードディスク、ボリューム上、集合体上、適切と思われる場所に書き込み、重複を排除するストレージシステム上)そのデータも)。だから私もこれについて心配する必要がありますか?過度の遅延など、ストレージの問題の証拠は見当たりません。
ちなみに、VMの1つでデフラグ分析を実行すると、約50%の断片化されたデータが表示されます。 20%を超える断片化が検出された場合、ウィンドウが自動的にI/Oを分割することをどこかで読んだと思いますが、それは本当ですか?デフラグタスクが無効になっているので、どのようにしてわかりますか?
VMでのディスクの断片化は、あなたが説明した理由から、単なる現実です。ほとんどのワークロードでは、心配する必要はありません。大規模なシーケンシャルIOを実行するワークロードがある場合、これはパフォーマンスの低下の原因となる可能性がありますが、ランダムな読み取り/書き込みワークロードでは発生しません。
VMがI/Oブレンダーと呼ばれることがあるのには理由があります:)
複数のI/Oは、常に効率が低下します。それがパフォーマンスの問題として現れるかどうかは、あなたが決定する必要があるものです。定義上、一部のファイルは大きく、データがランダムに編成されているため、一部の分割I/Oが予想されます。
スプリットI/Oは、ディスクキューの長さなど、根本的な別のボトルネックの症状である可能性もあります。
Storportのレイテンシーを測定していることを確認することをお勧めします。これはperfmonに埋め込まれており、次の「詳細情報」セクションで説明されているように測定できます。
http://support.Microsoft.com/kb/9780
2008 R2 SP1 storport SANパフォーマンスは同じハードウェア上のWindows2003よりも遅いことはかなりよく知られているはずです。
パフォーマンスの問題がある場合は、OSが関連するセキュリティ以外の修正プログラムで最新であることを確認することをお勧めします。
Netappの場合、split IOは一般的に 不適切な配置 を意味します。MBRがVMのディスクブロックをNetappブロックの境界にまたがるようにオフセットする場合、毎回= IO OSからの1つのブロックでは、ストレージを2回ヒットする必要があります。