News
12/17/2008
05:13 PM
George Crump
George Crump
Commentary
50%
50%

How Storage Latency Affects Performance

A few entries ago I introduced the subject of latency as impedance to storage performance. The biggest area of concern is what impact storage latency has on application performance. This is an area where solid state disk (SSD) solutions can make a difference that standard mechanical drive solutions struggle to solve.

A few entries ago I introduced the subject of latency as impedance to storage performance. The biggest area of concern is what impact storage latency has on application performance. This is an area where solid state disk (SSD) solutions can make a difference that standard mechanical drive solutions struggle to solve.With the exception of some specific applications like Oracle, most applications do things in a single threaded fashion; meaning that they do one instruction, then the next, then the next, and so on. For example, an application that is single-threaded that needs to update a piece of information will often need to find that information by asking the drives for it, waiting for the drives to find it, and then give it to the application. Then the application will need to update the information and issue a command to write it to disk. The application will wait for the write acknowledgement before going on to the next operation.

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.

Comment  | 
Print  | 
More Insights
Register for Dark Reading Newsletters
White Papers
Cartoon
Current Issue
Dark Reading December Tech Digest
Experts weigh in on the pros and cons of end-user security training.
Flash Poll
10 Recommendations for Outsourcing Security
10 Recommendations for Outsourcing Security
Enterprises today have a wide range of third-party options to help improve their defenses, including MSSPs, auditing and penetration testing, and DDoS protection. But are there situations in which a service provider might actually increase risk?
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2014-4807
Published: 2014-11-22
Sterling Order Management in IBM Sterling Selling and Fulfillment Suite 9.3.0 before FP8 allows remote authenticated users to cause a denial of service (CPU consumption) via a '\0' character.

CVE-2014-6183
Published: 2014-11-22
IBM Security Network Protection 5.1 before 5.1.0.0 FP13, 5.1.1 before 5.1.1.0 FP8, 5.1.2 before 5.1.2.0 FP9, 5.1.2.1 before FP5, 5.2 before 5.2.0.0 FP5, and 5.3 before 5.3.0.0 FP1 on XGS devices allows remote authenticated users to execute arbitrary commands via unspecified vectors.

CVE-2014-8626
Published: 2014-11-22
Stack-based buffer overflow in the date_from_ISO8601 function in ext/xmlrpc/libxmlrpc/xmlrpc.c in PHP before 5.2.7 allows remote attackers to cause a denial of service (application crash) or possibly execute arbitrary code by including a timezone field in a date, leading to improper XML-RPC encoding...

CVE-2014-8710
Published: 2014-11-22
The decompress_sigcomp_message function in epan/sigcomp-udvm.c in the SigComp UDVM dissector in Wireshark 1.10.x before 1.10.11 allows remote attackers to cause a denial of service (buffer over-read and application crash) via a crafted packet.

CVE-2014-8711
Published: 2014-11-22
Multiple integer overflows in epan/dissectors/packet-amqp.c in the AMQP dissector in Wireshark 1.10.x before 1.10.11 and 1.12.x before 1.12.2 allow remote attackers to cause a denial of service (application crash) via a crafted amqp_0_10 PDU in a packet.

Best of the Web
Dark Reading Radio
Archived Dark Reading Radio
Now that the holiday season is about to begin both online and in stores, will this be yet another season of nonstop gifting to cybercriminals?