Multiply this waiting by hundreds of thousands of transactions and you create quite a bottleneck waiting for the drive to do something. This latency impact is amplified by file systems and directory structures that require multiple metadata accesses to access a file. So the longer the latency between each request the slower the application becomes.
Multi-threaded applications overcome this latency by sending multiple instructions simultaneously to the storage system. The higher the latency the more threads you need to create to get the full performance capabilities of the system. For example if you have a 100,000 IOPS storage system with 1 millisecond of latency you need 100 threads to get close to full capability.
The choice for most customers is to lower the storage latency, or increase the number of application threads. The problem is that increasing the number of threads is a function of software. If your application does not provide you the tools to multi-thread then you have hit a brick wall; the only thing you can do is focus on lowering storage latency. If your applications can multi-thread, increasing the number of threads is an option, but there is expense to that as well.
Lowering storage latency to help application performance is where hard disk short stroking came from and it has been the primary reason for the interest in SSD. Short stroking as referenced in my previous entry is expensive and complicated and delivers latencies of 5ms. Solid state storage using flash can deliver latencies of less than 0.5ms, a tenfold improvement.
SSD appears simple, but many manufacturers still have a highly latent design. Simply inserting SSD drive modules into current storage shelf technology and having them managed by the feature laden storage software adds more overhead and does not eliminate as much latency as it should.
Where latency is an issue, stand alone systems like those from Violin Memory, Solid Data and Texas Memory Systems shine because they are not encumbered by the legacy storage shelf or the storage software. The downside is that these systems may (some vendors will support them) not integrate into the storage software or plug into existing empty drive bays (empty drives shelves are a rarity in today's data center).
Flash memory SSDs have their own specific latency issues due to the underlying flash technology. Erases and garbage collection can add significant latency to an access, especially when there is a high level of writes. The newer SSDs are beginning to improve both IOPS and latencies to deliver the performance benefits required.
For a single threaded application where storage I/O performance is a problem, SSD provides a viable and potentially more cost effective alternative to the workarounds that mechanical drives require to reduce latency. Just make sure that you are eliminating as much latency as possible as you select the solution.
Join us for our upcoming webcast on SSD: Flash vs. DRAM…and the winner is?
Track us on Twitter: http://twitter.com/storageswiss.
Subscribe to our RSS feed.
George Crump is founder of Storage Switzerland, an analyst firm focused on the virtualization and storage marketplaces. It provides strategic consulting and analysis to storage users, suppliers, and integrators. An industry veteran of more than 25 years, Crump has held engineering and sales positions at various IT industry manufacturers and integrators. Prior to Storage Switzerland, he was CTO at one of the nation's largest integrators.