Databases Reference
In-Depth Information
% Disk Read Time, % Disk Time, and % Disk Write Time, % Disk Idle Time
These counters indicate the percentage of time in the sample period that the disk was reading, writing, in
use (reads and writes), or idle. It's an interesting set of counters to watch and can be useful for high level
monitoring of storage performance. However, as soon as you need to look at the performance in more
detail, these counters are at too high a level to provide more direction.
Avg. Disk Bytes/Read, Avg. Disk Bytes/Transfer, and Avg. Disk Bytes/Write
This counter indicates the average number of bytes per read, write, or transfer (read and write). The
average is across all I/Os issued in the sample period. This counter is very useful to help tell you what
size I/Os are being issued. However, if there are a lot of differently sized I/Os issued within the sample
period, the results aren't that useful. If you can isolate the activity generating each I/O type and execute
that activity over a few sample periods, the counter will give you a much more useful reading.
Avg. Disk Queue Length, Avg. Disk Read Queue Length, and Avg. Disk Write Queue Length
This counter indicates the average disk queue length. The disk queue length is the number of requests
that are waiting to be sent to the disk. Again the average is over the sample period. This counter is very
useful, but its results can be misleading and will vary based upon different I/O subsystems. High values
for the disk queue length can indicate that you are over stressing the disk subsystem, and this is especially
so if they are combined with a rise in the latency of the I/Os. However when working with a large storage
array with many disks, you will not see the real value at the disk, as the counter only operates on queue
lengths within the software stack.
Avg. Disk Sec/Read, Avg. Disk Sec/Transfer, and Avg. Disk Sec/Write
This counter is telling you the latency of each I/O. That is how long each read or write took. It's an
average over the sample period, so if the sample period contains many different types of I/O, the results
are less useful than if the sample contains a set of onetypeofI/O.WhenconvertedtomSec,it'sdirectly
comparable to the results from the SQLIO test described below.
Disk Bytes/Sec, Disk Read Bytes/Sec, and Disk Write Bytes/Sec
This counter tells you the throughput in Bytes/Sec. It's a very useful counter for determining how
close you are to maxing out the I/O capacity of the storage subsystem, or in showing you how much
throughput the storage subsystem has during a perf test. When converted to MB/Sec, it's directly
comparable to the results of the SQLIO tests described later in this chapter.
Disk Reads/Sec, Disk Transfers/Sec, and Disk Writes/Sec
This counter tells you how many I/O Operations Per Second (IOPS) you are getting. This is another really
useful counter. You can compare the numbers here directly with the results of the SQLIO tests.
Physical Disk vs. Logical Disk
The difference between the physical and logical disk counters can be confusing. I have a fairly simple
model that I use to help explain the difference. The logical disk counters are counters of the I/O at the top
of the OS, right next to the Application layer. The physical disk counters are measuring I/O performance
at the bottom of the OS, right before the I/Os head across to the driver and leave the processor for the
many layers of the software and hardware stack between the OS and the surface of the disk.
Search WWH ::




Custom Search