How-To Match Flash Memory Solutions to Application Needs4:45 PM EST Fri. May. 04, 2012
The time has come for flash memory solutions. Here, Venkat, Vice President of Product Management at Violin Memory, discusses where and when flash is superior to compete storage methods. —Jennifer Bosavage, editor
With decades of experience storing data on hard disk drives (HDDs), the IT industry is long overdue for the type of revolutionary advantages offered by flash memory technology. Flash technology is making significant inroads to the modern data center and as those early-adopter solution providers are demonstrating, change can be a challenge without being disruptive.
Forward-looking organizations view the industry shift as a close cousin to challenge: opportunity. While those decades of experience have led to lots of tech advancement, at some point your reach diminishing returns. The opportunity in this case is putting storage on a Moore’s Law technology curve that brings the data center into balance across compute, networking, and storage. The key to avoiding disruption is finding the right tool for the job in this new landscape.
Many modern business critical applications continue to rely on high-value data that is stored on disk. Access to that data is becoming the primary data center bottleneck. Data is an enormously valuable business asset, but if an organization can’t extract information from the data, it’s simply an idle asset. Strategically, CIOs face the pain of fighting through storage roadblocks while trying to roll out critical business initiatives such as Big Data, eCommerce, virtualization, mobile, and cloud. Without the ability to rapidly read and write data, application performance will not be sufficient to support a business environment that is near real-time. Flash promises to solve these problems, dramatically increasing throughput and IOPS while delivering orders of magnitude lower latency.
Flash started out as consumer technology and has evolved to meet the more rigorous requirements of the enterprise data center. That evolution has resulted in three general categories of flash-based products:
• Server-based PCIe cards
• Solid State Disk (SSD) solutions
• Purpose-built flash memory arrays
Each of those approaches has a unique set of characteristics that when matched with the right use case can deliver substantial improvements, but when mismatched can lead to disaster. The optimal approach delivers the performance, reliability, and cost for a given application.
Next: Let's look at PCIe Cards
1. PCIe Cards
This option packages as much flash as possible onto a PCIe card that plugs into a high speed slot on a server. Instead of a slow disk, it’s a large capacity memory resource to feed hungry CPU cycles. Because of their much higher interface speeds, PCIe cards have much better performance than a typical commodity SSD. Through smart design, it can build in certain flash-optimized hardware and software features.
This solution is most commonly viewed as a memory extension that’s cheaper and denser than DRAM, while making a single host server run faster. Because PCIe cards are tied to a host server, there are reliability concerns in its inability to be deployed as shared network storage. Cost is a factor as well. A single PCIe card is typically two to three times the cost of the server and can double your overhead if mirroring is needed for reliability.
2. Solid State Disk (SSD) Solutions
Commodity SSDs are a natural evolution from consumer flash devices. The concept is straightforward: a device with the same form factor of an HDD that uses the same connectors and interfaces and can be plugged into a server or disk array. Multiple SSDs can be combined into a disk array to boost performance with little change needed to the surrounding hardware and software. Applications think they are seeing a faster disk drive.
While SSD solutions are convenient in that the ability to ‘look like a fast disk’ simplifies things, it overlooks the key issue that flash is a very different media than rotating magnetic disk. The commodity SSD is not meant for a use case that is focused solely on performance. Rather, it's designed to take advantage of the commodity cost and associated commodity reliability. That tradeoff means the surrounding hardware and software is not optimized for the unique characteristics of flash.
HDD arrays don’t need to account for flash specific issues, such as garbage collection and wear management and hence treat the devices as a black box. A controller designed for an HDD array can easily become the bottleneck, reducing the performance benefit.
3. Flash Memory Arrays
Flash packaging has a significant impact on the strength and weaknesses of a given solution. Flash Memory Arrays take the approach of designing a system from the flash chip up to better manage the balance of performance, reliability, and cost to optimize for enterprise storage. By starting at the flash chip level, vendors can optimize hardware, firmware, and software for the unique characteristics of flash. A purpose-built system such as that can very efficiently pool flash resources within the system for superior performance density and aggregate multiple systems for scalable shared network storage. Given the emphasis on efficient flash aggregation, a memory array is likely to be suited to a use case where a faster disk drive will do the trick.
Solution providers who are armed with the information to help their clients sort through the myriad of technology options on the market become valuable business partners. The best ones consistently get the round peg in the round hole. Flash storage is similar to all strategic technology decisions in that there are pros and cons to the various approaches.