The following terms are related to disk analysis; the list also summarizes topics covered in this section.
Environment. The first step in disk analysis is to know what the disks aresingle disks or a storage arrayand what their expected workload is: random, sequential, or otherwise.
Utilization. The percent busy value from iostat -x serves as a utilization value for disk devices. The calculation behind it is based on the time a device spends active. It is a useful starting point for understanding disk usage.
Saturation. The average wait queue length from iostat -x is a measure of disk saturation.
Throughput. The kilobytes/sec values from iostat -x can also indicate disk activity, and for storage arrays they may be the only meaningful metric that Solaris provides.
I/O rate. The number of disk transactions per second can be seen by means of iostat or DTrace. The number is interesting because each operation incurs a certain overhead. This term is also known as IOPS (I/O operations per second).
I/O sizes. You can calculate the size of disk transactions from iostat -x by using the (kr/s + kw/s) / (r/s + w/s) ratio, which gives average event size; or you can measure the size directly with DTrace. Throughput is usually improved when larger events are used.
Service times. The average wait queue and active service times can be printed from iostat -x. Longer service times are likely to degrade performance.
History.sar can be activated to archive historical disk activity statistics. Long-term patterns can be identified from this data, which also provides a reference for what statistics are "normal" for your disks.
Seek sizes. DTrace can measure the size of each disk head seek and present this data in a meaningful report.
I/O time. Measuring the time a disk spends servicing an I/O event is valuable because it takes into account various costs of performing an I/O operation: seek time, rotation time, and the time to transfer data. DTrace can fetch event time data.
Table 4.1 summarizes and cross-references tools used in this section.
Table 4.1. Tools for Disk Analysis
Tool
Uses
Description
Reference
iostat
Kstat
For extended disk device statistics
4.6
sar
Kstat, sadc
For disk device statistics and history data archiving
4.13
iotrace.d
DTrace
Simple script for events by device and file name
4.15.3
bites.d
DTrace
Simple script to aggregate disk event size
4.15.4
seeks.d
DTrace
Simple script to measure disk event seek size
4.15.5
files.d
DTrace
Simple script to aggregate size by file name
4.15.6
iotop
DTrace
For a disk statistics by-process summary
4.17.1
iosnoop
DTrace
For a trace of disk events, including process ID, times, block addresses, sizes, etc.