この特集のトップページへ

9.10.3 ディスクの性能

 基幹業務システムを稼働させて性能問題が発生したとき,ハードウェアリソースのボトルネックとなり得るのは,メモリとともにディスクサブシステムが最も多い。ディスクサブシステムのハードウェアリソースのうち,ボトルネックとなり得るのは,物理ディスクドライブ,ディスクコントローラ,RAIDコントローラ,PCIバスなどである。これらのハードウェアリソースがボトルネックとなるのは,概してインデックス設計やアプリケーション設計の誤りによって,リソースの能力以上のディスクI/Oが発生している場合といえる。
 一般的にPCサーバーで利用されているSCSIハードディスクのアクセス仕様は,Table 9-9に示すとおりである。

Table 9-9 SCSIハードディスクのアクセス仕様

回転数 平均シーク時間 平均回転待ち時間 最大内部転送時間
5400rpm 9.5〜10.5ms 5.5ms 6〜10Mバイト/秒
7200rpm 7.0〜 9.5ms 4.0ms 13〜20Mバイト/秒
10033rpm 3.5〜 7.0ms 3.0ms 17〜27Mバイト/秒

 本書の執筆時点におけるPCサーバーで最も利用されている7200rpmのハードディスクの場合,コマンドのオーバーヘッドおよびデータ転送時間を除いた平均アクセス時間は一般的に12〜14ミリ秒であり,1秒あたりのI/O数は75〜90回である。最近使用されるようになっている10033rpmのハードディスクの場合で,100〜150回程度である。ハードウェアRAIDコントローラに接続されている場合はRAIDコントローラが個々のハードディスクを制御しているために個々のハードディスクではなく,RAIDコントローラあたりで約2000回/秒である。

Table 9-10 SCSIインターフェイス仕様

規格 インターフェイス 最大転送速度
SCSI-3 Ultra SCSI 20Mバイト/秒
SCSI-3 Wide Ultra SCSI 40Mバイト/秒
SCSI-3 Ultra2 SCSI 40Mバイト/秒
SCSI-3 Wide Ultra2 SCSI 80Mバイト/秒

 最近は,Fiberチャネル*1を利用するPCサーバーも出現している。
 ディスクサブシステムのボトルネックを調べる場合には,ディスクカウンタを有効にする必要がある。ディスクカウンタには物理ディスクカウンタと論理ディスクカウンタの2種類があり,前者はパフォーマンスモニタにおけるPhysicalDiskオブジェクトで,後者はLogicalDiskオブジェクトで,それぞれ示されるカウンタのことである。Windows NTのディスクカウンタを有効にするには,コマンドプロンプトからコマンド“diskperf -y”を実行し,Windows NTを再起動する。
 パフォーマンスモニタを使用してディスクの待ち行列を調べるときには,重要な注意がある。論理ディスクカウンタがディスクアドミニストレータで割り当てられた論理ドライブ文字(C,D,Eなど)と関連付けられるのに対して,物理ディスクカウンタはディスクアドミニストレータが示す物理ディスクデバイス(Disk 0,Disk 1,Disk 2など)と関連付けられる。ディスクアドミニストレータで1台の物理デバイスとして見えているとき,確かにハードディスクが1台しか接続されていないこともあるが,RAIDシステムを使用して数台のハードディスクが接続されていることもある。RAIDシステムにおけるディスクアレイは数台のハードディスクから構成されるが,その場合にもディスクアドミニストレータでは1台の物理デバイスとしてしか認識されないのである。


  1. Fiber ChannelはANSI X3T11として制定された汎用の高速通信用規格である。最大転送速度は100Mバイト/秒で,「ネットワーク」と「I/Oインターフェイス」の両方に適した機能と性能を備えている。接続方法として,(1)ポイントツーポイント接続,(2)スター型接続,(3)ループ型接続,という3種類に対応している。
前へ Chapter 9 41/46 次へ