IOPs, Bandwidth, Throughput…

Storage Contention

I was given a chart from a vendor that shows raw throughput of a disk array they suggested I purchase. This chart was a comparison between one array versus a list of others in terms of throughput.  In an attempt to objectify this storage contention idea that keeps getting thrown in my face, I looked up the definitions of IOPS, throughput, and Bandwidth and their relationships in a storage environment.  Here’s what I learned:

  • IOPS = IO’s Per Second which is 1 / (average latency in ms + average seek time in ms) also based on block size
  • Throughput = Amount of data the network can handle (3Gb, 6Gb, 12Gb SAS)
  • Bandwidth = Network speed of the storage device (7.2k, 10k, 15k RPM drives)

Being somewhat of a gear head, I see these terms correlate closely to automotive concepts of horsepower, torque, and vehicle function.  We Americans are known to purchase horsepower off-the-lot; however, we drive torque when choosing our vehicles. Likewise, many computer guys purchase throughput – 10k vs. 15k SAS drives when our applications actually “drive” IOPS.  It is rare that a user’s speed perception and end-user experience is based solely on throughput. A high-horsepower vehicle may under-perform when compared to a lower-horsepower yet higher low-end torque vehicle at the green light. So, why is it that sales people and application vendors focus solely on drive RPM speed bandwidth and storage network throughput?

Read the rest of this entry »