Pros and Cons

Aside from this increased flexibility of having performance where you need it when you need it, there is a cost benefit associated with this deployment. Historically, if you wanted to improve the performance of the overall storage infrastructure, you had to buy more storage. If, for example, the current SAN is performing at 20,000 IOPS and you needed to improve that to 30,000 IOPS, you would go out and purchase X number of drives to accomplish that.

With the advent of flash arrays in the past couple of years, this acquisition is made a little less painful from a rack space perspective, but you will still pay a pretty penny to add that additional 10K of throughput. Instead of having to purchase additional storage, though, by virtualizing the flash in the servers, you decouple performance gains from capacity in the SAN.

Beyond the flexibility and cost savings, there are obvious boosts in performance just by simply moving to faster flash as opposed to spinning disks. Moreover, there is the added benefit of having the flash in the server, closer to the CPU and VMs, reducing the need to send data back and forth through a back end infrastructure. How much performance can be gained is going to be one of those big "it depends" rat holes of what are the workloads, which vendors, where, etc.

That brings the conversation to what are the potential gotchas when it comes to virtualized flash. First and foremost, it really only effects reads, so all write performance will still be associated with the back end storage. It can be argued that this is still good for the overall storage infrastructure as it will free up traffic to and from the backend storage, but it should be noted that workloads that are predominantly write based would see little direct impact.

The second drawback is also a technical issue and that is this architecture is still an intelligent tiering solution. It is built on algorithms and frequency of data being read. The more often data is accessed, the more likely it is put into cache. Therefore, for applications that are utilized infrequently or applications where there is very little predictability in data flow, there may not be direct performance improvements by implementing virtualized flash.

Final Thoughts

Back to the question at hand: will flash virtualization turn out to be a lasting technology that gains wide adoption? I would say the fact that VMWare has implemented a version of it into their latest release is a sign that it is here to stay. Additionally, seeing bellwethers like FusionIO and Sandisk with footholds in the market further makes the case for its continued existence. Moreover, the addition of startups like PernixData leads me to believe there will be wider adoption down to the small/medium enterprise space.

It is interesting to note that Pernix and Sandisk have been winning several prestigious industry awards for product innovation--just have a look at their websites to see the lists. Awards are pretty and make you feel good, but installations are what counts and it is difficult to say what the market adoption rate really is so far since none of them list any large deployments or lighthouse wins yet. It will be very interesting to see which of these vendors makes that quantum leap first. That will be the true test to determine who is the flash of brilliance and who is the flash in the pan.

We at TweakTown openly invite the companies who provide us with review samples / who are mentioned or discussed to express their opinion of our content. If any company representative wishes to respond, we will publish the response here.