|By Louis Imershein||
|December 7, 2013 12:00 PM EST||
Over the last three years, the market has been abuzz with the news that deduplication technology was going to change the economics of flash-based storage systems forever. In fact just recently, in his article War Between SSDs and HDDs Will Escalate Through 2016, industry analyst Ben Woo of Neuralytix, Inc. noted:
"In the next two to five years, the only way flash-based storage vendors can challenge HDD-based storage systems on price is by way of data efficiency. The cost per unit of storage ($/GB) of HDDs is still 1/10the cost of NAND flash. However, data efficiency technologies (such as deduplication and/or compression) from a variety of vendors are showing data efficiency ratios that are over 10:1. The cost of SSD storage media is now coming in line with the cost of high-end HDDs."
But the fact is, the performance of these all flash storage systems that provide dedupe has been pretty lackluster to date and, in particular, with regard to random writes. It's hard to find anyone capable of handling more than 150 thousand 4K IOPS on the market. Those vendors that do report faster numbers (and who claim to have dedupe) are often turning off their dedupe feature for published performance results (or worse, performing post-process write allocations that shorten the life of the flash). At the same time, some of these flash vendors are telling the industry that they're seeing 10:1 data reduction rates when applying optimization. When you factor in the cost savings for this deduplication rate, the jump in price between a midrange performance flash array (with dedupe) and a high end array (without dedupe) is extraordinary.
Effective Cost of Todays Flash Storage Systems Across 4K IOPS Random Write Thresholds
How can OEMs reduce cost but deliver the random IOPS performance that their customers need? The roadmaps from many vendors suggest this is possible, but as usual the answer comes down to how hard the technology is to build or buy. Storage engineers assure me that with enough time and available resources a vendor delivering a high-performance flash product can build their own deduplication by implementing block reference counting and fine-grained thin provisioning capabilities within their architecture and combining those with a modern high performance duplicate advisory index. And several vendors are building solutions that will be able to hit these numbers today. At least one component supplier even offers a ready-to-run device mapper driver for storage systems based on Linux.
None the less, vendors have been less than forthcoming with regard to the performance of their currently shipping products. Either they will have to step up and be more forthcoming with their own performance assessments or it will be left to IT organizations to measure performance themselves. Either way, we really need to standardize on a common tool for evaluation and share the results. The open source Flexible IO Tester (fio) utility, that's developed and maintained by Jens Axboe over at Fusion-io, is an ideal candidate. There are several tests that should be considered when using this tool.
- Use the libaio engine to measure both sequential and random reads and writes as well as mixed workloads.
- Analyze workloads with a range of queue depths from 1 to 1024 and run the tool with varying numbers of simultaneous jobs.
- Test IOPS across multiple block sizes from 4K to 128K and understand how system performance varies with different sized IO requests.
In addition, there are several parameters to keep in mind when running the tests to prove you're seeing real, not baked numbers.
- To prevent deduplication from giving the implementation an unfair performance advantage, fio allows evaluators to test vendor systems with dedupe turned on but generate pure random data (data which does not dedupe).
- Write tests should be performed first so as to fill the disk with data (thinly provisioned systems can actually appear to run faster than the underlying storage on read tests if you don't).
- Tests should be run over long durations so that the evaluator develops a good understanding of how performance might change over time.
What Data Optimization for Tier 0 Means to the Industry
High-end systems have tremendous value. They address workloads that the lower end just can't touch at a cost per IOP that is far lower than that of traditional spinning disk. With the coming of next-generation solutions with proper deduplication, cost/GB drops dramatically broadening its applicability in the enterprise.
Effective Cost of Today's Flash Storage Systems vs Next Generation Dedupe Reference Architecture Across 4K IOPS Random Write Thresholds
In the past, deduplication couldn't scale to meet the performance demands of Tier 0 storage tiers. This meant that the cost of a storage system capable of delivering even 175 thousand random write IOPS was effectively six times that of a system that could deliver 150 thousand. With these next-generation deduplication systems becoming available, that cost penalty for high performance storage goes away. Top tier vendors have no excuse for withholding these capabilities from their customers. The results above are proof that newer systems can deliver true high-end performance and the cost savings from data reduction at the same time. Once these technologies land in the market, it should be possible to buy Tier 0 storage at Tier 1 prices. As always, trust, but verify.