View Single Post
  #3  
Old November 27th 03, 03:51 AM
David Sworder
external usenet poster
 
Posts: n/a
Default

First, that 200MB/s is misleading, FC is a duplex protocol, it can do
200MB/s in each direction simulataneously, so it's really more like

400MB/s.
Second in a database application, you'll almost certainly never see

200MB/s
of throughput, let alone 320MB/s so raw throughput is a poor measure, what
you are really interested in is I/O operations/sec and this is the Fibre
channel protocol is much more efficient in terms of how it uses the
available bandwidth becuase it can setup and tear down an I/O transaction
much more quickly than typical SCSI allowing it to handle more
transactions/sec for a given amount of bandwidth.


Thanks Nik,

That was a very helpful post. After reading some of your other posts on
this newsgroup (via Google), it's clear to me that I/O operations/sec are
more important to me than total bandwidth. What's odd is that the SCSI
manufacturers such as Adaptec don't list IOs/sec on their spec sheets which
makes it difficult to compare apples to apples. How would one go about
finding the IOs/sec for a SCSI RAID card? That fibre channel unit that I
mentioned in my original post handles 40,000 IOs/sec according to the Dell
site. I'd like to see how high-end SCSI RAID cards compare.

The next logical question in this little learning exercise of mine is:
What exactly defines an IO operation? Maybe an example would clarify my
question...

Let's say I have a machine with one hard drive. SQL Server runs on that
machine and attempts to read 4,000 bytes of data sequentially from the
drive. This would count as one IO operation correct? Now let's change the
situation so that instead of one harddrive, I have that cool fibre channel
device that I mentioned in my previous post. It has 10 drives configured as
RAID 1+0. In this situation, when SQL Server attempts to read 4,000 bytes,
Windows still thinks of this as 1 IO operation -- but does the FC device
consider this to be 1 operation? In order to read 4,000 bytes, the FC device
is accessing all 10 disks simultaneously. So is this operation considered as
*ten* IOs, or only one?

I'm asking this question because my books states that I should closely
monitor the IOs/second in 'perfmon' and make sure that it does not exceed
85% of the maximum throughput. So if the FC RAID device above supports a
maximum of 40,000 IOs/second, I'd want to make sure that I don't exceed
34,000 IOs/second on a regular basis. Tracking IOs/second is easy using the
Windows PerfMonitor, but I'm not sure if PerfMon is tracking the correct
value since Windows has no way of knowing that each IO read/write will
trigger multiple read/writes across the various drives in the array. Do you
see what I mean? So what exactly defines an "IO" on a RAID device, be it a
SCSI RAID or an FC RAID?

Thanks,

David