At Storage Switzerland we have written up more than a few case studies about all-flash arrays. As IT professionals have successfully moved from hard disk based arrays to all-flash arrays, the results are predictable; there is euphoria over the improvement in performance. Once migrated to the all-flash system, applications fly. The case studies almost always include an anecdote of a process that used to take days, that now takes hours. The problem is users and application owners are a sophisticated bunch. They soon get used to the quantum leap in performance. They then develop new applications and environments to consume that performance.
The Flash Phases
Flash storage adoption started as a point solution to solve point performance problems. Flash was expensive, and its use had to increase revenue. This was phase 1 of flash adoption. We are now in the middle of the second phase of flash adoption; flash as a general purpose storage system. In this phase, all the flash arrays store all active data sets and workloads. We are also beginning phase 3. In this phase, users are expecting flash performance. As a result, applications and environments are designed counting on flash storage performance. Since both phases 1 & 2 replaced hard disk systems, the euphoria was easy to deliver. Phase 3 will replace existing flash arrays, making performance an assumption and user euphoria harder to achieve.
User’s expectations, application development and infrastructure design all eventually catch up to the performance capabilities of phase 2 arrays. For example, users will start to complain about the dozens of minutes that it takes to run the report or process that used to take hours or days. Another example is that in phase 2, 5 or 6, virtual machines per physical server is no longer a limitation. Virtual environments can now host a couple dozen VMs per server but have the CPU power to host still more, so they need a storage system that will support it.
A Return to Hardware Design
Phase 2 flash systems captured IT’s attention by delivering flash performance at HDD prices. Deduplication, compression as well as using consumer grade flash, made price parity with HDDs a reality. The emphasis was on the software that drove the all-flash array, not how the system that housed the NAND performed. Phase 2 performance was more than good enough for most data centers, so to some extent the hardware didn’t matter, the price did.
In phase 3 cost competitiveness is a given, thanks to either data efficiency techniques, or the widespread use of triple-level cell (TLC) flash. Performance, not price, will be the primary motivator for data centers to upgrade from a phase 2 to a phase 3 flash array. The software component of phase 3 all-flash arrays will focus less on data efficiency and more on flash management. An example of this is managing flash garbage collection through flash arrays software. We discussed how arrays are able to do this in our column, “Software can now Define the SSD“. Array managed flash will improve performance, but a phase 3 array needs to reduce internal latency.
Most all-flash arrays have a SAS interface to the SSDs they use in their systems that leverage the SCSI protocol. SAS and SCSI were designed for hard disk drives, not memory. A new interface designed specifically for memory is needed. There are several choices available; memory bus flash; NVMe with PCIe bus or standard PCIe.
In our on demand webinar “How NVMe Will Change Flash Storage“, we discuss the various options in flash hardware design and why NVMe might be the best option for phase 3 systems.