There are many all-flash storage arrays on the market today -- with everyone screaming out their speeds and feeds performance numbers -- and the various results seem to be all over the place.
There are four main types of all-flash arrays today (this, of course, might change in a few months), each with its place in the market. These are those four types:
Traditional storage array. The storage controllers in the traditional storage array have not been altered to address the unique performance characteristics and management needed to support solid-state technology for best performance. They support HDD-form-factor SSDs and treat the SSD just like an HDD. This means any housekeeping activities unique to SSDs, like wear leveling, are left up to the internal features of the supported SSD. This can mean that when the write cliff does happen, the performance degradation can be more severe than it would be in all-flash arrays that have specifically managed around this event.
These traditional storage array solutions can offer some increase in performance with a lower response time, but the performance bottleneck will be quickly realized at the storage controller. These arrays show on average about a doubling of performance (depending on the workload) over the same array using HDDs with a latency of just slightly under one millisecond.
Note: What is a write cliff? When all the cells in a flash drive have been written to at least once, a read-erase-write operation must occur every time a write request comes to the device, causing performance degradation. When plotted on a curve, this performance drop-off looks like a cliff.
Re-architected traditional storage array. Some vendors with traditional storage controllers designed to support features such as replication, dedupe and thin provisioning have re-architected their controllers and customized their ASICs. This allows the controllers to support the unique behavior and performance of solid-state technology while continuing to offer advanced features to which their customers have grown accustomed.
The average performance (depending on the workload) of these arrays has been closer to a five-fold performance gain (using more than 90% of the capacity) over the same array using HDDs, with latencies around 500 microseconds to 800 microseconds. Some examples of vendors re-architecting their storage controllers to be used as all-flash arrays are HP StoreServ 7450 and NetApp EF550 flash array.
Custom flash module design. Some vendors have taken this re-architected traditional storage array one step further by creating a custom flash module design to handle flash technology's unique housekeeping tasks, like metadata management and garbage collection. The internal communication of these custom-designed flash modules is PCIe-based. This array design is a good balance of high performance and the advanced features offered by the re-architected storage controller. But the tradeoff is that this is a proprietary design and commodity SSDs can't be used to replace devices. Depending on the workload, the average performance gain has been anywhere from five times to 10 times (using more than 90% of the capacity) over using HDDs, with latencies about 500 microseconds. An example of this type of all-flash array would be Hitachi Data Systems (HDS). What makes this design so interesting is the level of flexibility in its unified storage family to support a variety of configurations, including both SAN and NAS solutions.
Architected all-flash array. These arrays are architected from the ground up specifically for flash technology. They are especially aggressive on metadata management and buffering algorithms that have an impact on how garbage collection is efficiently handled. These arrays are currently limited in offering advanced features, like copy technologies, but some vendors offer data reduction and storage efficiency technologies inline. Also, some vendors are now offering a scale-out architecture as opposed to a scale-up architecture that could be more attractive for in-memory databases. On average, the performance (depending on the workload) has shown to be about 10x (using over 90% of the capacity) with latencies shown as low at 200 microseconds. Some examples of vendors that have purpose-built storage arrays from the ground up as all-flash arrays with advanced data reduction features like deduplication, compression, and/or thin provisioning built in are Pure Storage, EMC XtremIO and Solid Fire. Solid Fire also implemented a scale-out architecture.
All-flash storage arrays are still evolving and maturing. When selecting an all-flash array, it is important to consider whether the storage controller is an existing design, if it was re-architected for flash, or if it was purpose-built to handle the unique behavior and performance of flash.
Guide to enterprise all-flash storage arrays
All-flash arrays: Performance vs. function
All-flash storage arrays offer choice