News
10/29/2013
01:39 PM
George Crump
George Crump
Commentary
50%
50%

Quick Guide To Flash Storage Latency Wars

Because latency is the key performance differentiator in server-side flash, SSD, PCIe and memory bus flash storage vendors are competing on speed.

Server-side flash is all about performance, and the key performance differentiator is latency. Latency is the time required to complete a transaction between a host and a storage system, such as a read or write operation. As a result, a "latency war" has broken out in the flash community about the best way to reduce flash latency.

Latency actually has several levels. The first level is the time it takes the media to position and be ready to respond to an I/O request. With a hard drive, this latency was the end of the discussion, as the milliseconds it took for a hard drive to get in position overshadowed any other latency in the storage communication chain.

Solid state disk (SSD) drives -- which are flash inside a hard drive container -- eliminated that device latency. SSDs can put themselves in position instantly since they have no moving parts, no platters to rotate. But that exposed other areas of latency in the storage protocol stack. For example, the time it takes for the I/O to work its way through the overhead of SCSI became noticeable.

This led to the introduction and rapid adoption of PCIe-based flash. Most of these cards eliminated the storage protocol stack altogether. The communication was direct to the application or operating system over the PCIe bus. Eliminating the storage protocol stack meant that special drivers had to be created for the various operating systems that a data center might have.

Vendors then introduced API sets that would allow users to write directly to the PCIe flash card from within the application for a further reduction in latency, not only avoiding the storage I/O stack but also avoiding the operating system itself.

What PCIe began to show, though, was that there was another level of latency. The PCIe bus itself. The PCIe bus routes through a motherboard-based fabric that allows multiple cards to share PCIe bandwidth. Some higher end servers will have multiple PCIe hubs in order to better route data. But even a high-end server when burdened with lots of I/O can become PCIe bottlenecked and lead to latency. (Remember that PCIe supports more than storage I/O.)

The next tier in latency elimination is to eliminate the PCIe bus altogether. Several vendors are introducing memory-bus-based flash storage. These flash storage devices come in a memory DIMM form factor and can act as storage with a device driver, similar to a PCIe SSD. Even more interesting, with a tweak to server system BIOS, it can act as main memory to the server. Imagine 400 GBs of "RAM" via flash on a single DIMM. Using the memory bus provides even more I/O channels and greater bandwidth; it was, after all, designed to support DRAM.

In both implementation modes, the use cases are very interesting. The ability to create very dense servers with terabytes (if not petabytes) of flash capacity in a 1U system changes the data center design game quite a bit.

There is no single perfect solution, as SSD, PCIe flash and memory flash all have their ideal use cases, and many data centers may have a mixture of all three. Designing applications for extreme high performance with almost zero latency is now reality. But their use is not limited to the performance fringe. For example imagine using these technologies to design a single physical server to support 10,000 plus desktops. We have the processing power available to us, but the latency of storage is no longer the roadblock it always was.

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
samicksha
50%
50%
samicksha,
User Rank: Apprentice
10/31/2013 | 11:25:23 AM
re: Quick Guide To Flash Storage Latency Wars
Any review on Tape storage,as i don't think it going away any time soon, as it is still the most cost-effective and simplest way to archive huge amounts of data.
D. Henschen
50%
50%
D. Henschen,
User Rank: Apprentice
10/31/2013 | 10:49:46 AM
re: Quick Guide To Flash Storage Latency Wars
I heard an enlightening cost comparison the other day by Ari Zilka, CTO at Hortonworks. 1Terabyte of RAM = $70,000; 1TB of Flash = $8,000 to $20,000, depending on quality/discounts; 1 TB of hard drive = $60 to $100 depending on quality/performance. Maybe somebody would quibble with the exact figures, but it's clear there is a cost to real-time performance.
Joe Stanganelli
50%
50%
Joe Stanganelli,
User Rank: Strategist
10/31/2013 | 3:58:11 AM
re: Quick Guide To Flash Storage Latency Wars
Of course, this all stands to change over the next several years as SSDs gradually become obsolete (except, possibly, in hybrid setups) under Moore's Law. http://www.enterpriseefficienc...
beachscape
50%
50%
beachscape,
User Rank: Apprentice
10/31/2013 | 2:25:02 AM
re: Quick Guide To Flash Storage Latency Wars
Great summary describing latency in storage. It would be good to have a table comparing latencies of HDDs, SSDs, PCIe and flash memory DIMMs.
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-5395
Published: 2014-11-21
Multiple cross-site request forgery (CSRF) vulnerabilities in Huawei HiLink E3276 and E3236 TCPU before V200R002B470D13SP00C00 and WebUI before V100R007B100D03SP01C03, E5180s-22 before 21.270.21.00.00, and E586Bs-2 before 21.322.10.00.889 allow remote attackers to hijack the authentication of users ...

CVE-2014-7137
Published: 2014-11-21
Multiple SQL injection vulnerabilities in Dolibarr ERP/CRM before 3.6.1 allow remote authenticated users to execute arbitrary SQL commands via the (1) contactid parameter in an addcontact action, (2) ligne parameter in a swapstatut action, or (3) project_ref parameter to projet/tasks/contact.php; (4...

CVE-2014-7871
Published: 2014-11-21
SQL injection vulnerability in Open-Xchange (OX) AppSuite before 7.4.2-rev36 and 7.6.x before 7.6.0-rev23 allows remote authenticated users to execute arbitrary SQL commands via a crafted jslob API call.

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?