Finally seeing the light!
One by one, Enterprise Flash vendors are finally rejecting SSDs for their next generation All-Flash-Array design. Good idea, who needs disk emulation in a disk-less device?
Disclaimer: I'm working for IBM as a storage technologist, and I was already admiring Texas Memory Systems RAMSAN before it became IBM. Today's IBM FlashSystems have been designed this way since 2012. Nice reverence!
Here's my top 5 reasons why SSDs are not ideal :
1. As a developer, you don't want third-party firmware to steal time cycles and hide vital information from the chip-level, or do other unexpected things. You'll revert to SSDs only if you don't have the time to develop good endurance-enhancing algorithms of your own.
2. Wear-levelling algorithms work better the more chips they cover. Custom modules carry many chips, and the algorithms can cross module boundaries. In contrast, space inside an SSD is very limited and so is the number of NAND Flash pages for local endurance optimization. They will wear out quicker than necessary.
3. Another pain is the RAID controller required to protect against spontaneous failures: You don't gain stability or lower latency by adding internal interfaces, especially with third-party elements. Without SSDs, one can *combine* endurance optimization with hot swap module protection in RAID5 style, a very efficient code stack which fits in lightweight FPGA gate logic.
4. SSDs would not only wear out quicker, they will always be phased out before their reserve capacity pool is depleted. That is because disk slots don't support variable capacity by definition. Basically you're throwing away 101% healthy chip capacity. Custom chip modules don't have that restriction, they can "help each other out". This results in a significantly longer mixed lifetime.
5. Enterprise storage should always strive to become more reliable, faster, cheaper, and lighter on power consumption: We achieve this by removing any piece of hardware or code in the data path that can be consolidated in something smaller. As a designer, once you're talking to the raw chips, you also gain the freedom to select the chip manufacturer of *your* choice, not the one that the [commodity] SSD manufacturer currently finds to be the cheapest.
I'm also reading:
"The biggest slow-down in applications is inefficient code, improperly used cache, and terrible architecture".
Agreed. But we also find that the cheapest countermeasure (and sometimes the only one) is to throw faster hardware at the problem: 99 out of 100 FlashSystem clients are seeking the best latency as a quick solution for slowing applications, while less than 1% is already fully utilizing the max throughput.
Be careful, we're talking about 99 µs and 10 GB/s for a single 2U FlashSystem 900 here. And there's up to 8 such 57 TB drawers in a clustered FlashSystem V9000 configuration. The latter would also support Real-Time Compression modules, packing up to five times more Oracle DB data in the same space... equals 2.2 PB high performance databases in a single rack.
We're expecting that number to double with the new chip generation becoming broadly available. Rest in peace, disk arrays.