Flash storage, one size doesn’t fit all
Welcome to my first blog post here at ViON!! When considering what to write about, my thoughts were centered on covering a technology that is influencing all of ViON’s Customers. Well, it took all of two seconds to decide that Flash technology was it. Nothing has provided more disruption, in a shorter timeframe than integration of NAND flash into the IT stack. I’ll be spending the next few paragraphs explaining to you why I believe that all flash is not the same and there’s much more involved than just picking SLC or MLC.
I first encountered flash memory roughly five years ago. Flash devices were less costly than DRAM based devices but still crazy expensive by today’s numbers. Your choice was simple as there was only one flavor of NAND chips available, SLC. Today, there’s an ever widening choice of flash technology in the marketplace, each exhibiting differing characteristics making your choice more complicated.
All four types of NAND flash above have a common characteristic. The media is inherently poor for writes due to the underlying technology. For early implementations, I/O alignment was critical in getting flash to perform and a misaligned write I/O would often exhibit performance less than that of spinning media.
One approach to mitigate the negative write performance of flash is to leverage NVRAM as a buffer for writes providing two benefits. First, NVRAM is way faster than flash for writes, thus I/O operations from applications can be acknowledged faster, reducing latency. Secondly having a buffer to coalesce these writes into a full NAND page reduces the number of program erase cycles performed, in turn extending usable life. Without going deep down a rabbit hole, I will greatly simplify the next problem by saying, as bit density increases per cell, integrity of the data becomes more difficult to maintain. This is true whether density increases due to storing additional bits or by reducing the size of the chip (die size). Ever increasing density levels are driving providers to improve error correction methods within flash controllers.
When flash first came to the storage marketplace, it showed up as a SAN attached block device that was used like any other LUN. Data was accessed via SCSI protocols and reads or write were performed directly to NAND flash. Fast forward, to today’s deployments and you’ll see flash is deployed at many layers within the I/O stack through different protocols and custom interfaces. Flash is available as direct attached storage in a single drive form factor, as shared storage sitting on a SAN or IP network, as a Tier or Cache with your favorite storage array, or directly in the server as a PCIe card. On the server side, different implementations access Flash through SCSI protocols or through custom drivers appearing as a caching layer running alongside your application.
Each of these deployment models can provide value and can improve productivity, user experience and performance when deployed as overall solution to a business problem. ViON has a broad flash portfolio with solutions and products in all categories of storage. Contact ViON and have one of our solutions architects assist in providing the correct solution for your business need.
I sincerely hope you got something out of this entry; thanks for taking the time.