With the advent of solid state drives (SSDs), everyone now accepts the fact that hard drives are slow. This has spawned the new trend that “everyone needs SSD” and “traditional drives just aren’t any good anymore”, which is simply not true. There are many reasons why hard drives seem slow in practical use, but they can be mitigated to make the hard drives perform far better than we expect.
We know there are basically four speeds of hard drives: 5.4k, 7.2k, 10k, and 15k RPM. This would seem to indicate that a 7.2k drive would be around 72 percent the speed of a 10k, but in reality it may only be able to accommodate 10 percent of the performance of a 10k drive due to the manufacturing process, RAID layouts, and interconnects.
One of the biggest issues with traditional hard drives is that they are a mechanical, spinning disk with a small read/write head that flies back and forth over it. This means that there is only so fast the disk can be spun, only so much vibration that the disk can tolerate, and only so quick that the head can move back and forth.
The movement of the head and rotational speed comes into play in a serious way when drives start filling up. The outer edge of a drive is moving much faster (relative to a stationary object like the read heads) than the interior of the drive does. This means that head has a lot of data available passing by very quickly which it can access on the outer edge, whereas the center of the platter is: a) smaller and b) not spinning as fast relatively.
In order to actually read or write any data, we have to wait for everything to line up, the head has to move, and the data has to spin by and then it can be read or written. On the outer edge, a lot of data is available without very much head movement, which means the drive is only waiting on the data to spin by; which it is doing very rapidly.
When we get data in the inner parts of the disk though, we have to wait for the head to move all the way across the drive, and then the data to spin around (more slowly). The combination of this means that as drives get more and more full, performance starts to trail off considerably. This is further amplified by 5.4 and 7.2k drives, which are built to optimize capacity, at the expense of precision in their read/write heads. That makes them disproportionately slower than 10k/15k drives with seek times often three times as long.
All of this led to a trend in the industry of “short stroking” for performance intensive loads. “Short stroking” means only using the outer tracks of a drive, where data can be accessed the most quickly, and leaving the rest of the drive empty. This is where SAN manufacturer recommendations of “never use more than 70-80 percent of your storage” came from; they are trying to not take the massive performance hit in the center of the drives.