How flash is really going to affect the storage industry is becoming clear. The short take: not as big a deal as flash vendors hoped. The longer take: There won’t be much of a mid-range flash market; instead we’ll see either costly fast flash or cheap slow flash.
There are lots of theories about how flash will alter the mass storage landscape. This is mine.
The flash write problem
The fundamental flash problem is the slow writes. There are 3 elements to the slow write problem.
- Flash has to be erased before it can be written. Every write operation is really 2 write operations.
- The writes are large. Typical block sizes are 128KB to 256KB. Writing a single page requires writing – after erasing it first – the entire block.
- The write bandwidth to a single block is less than a slow disk. High bandwidth writes requires parallel paths to multiple blocks.
These problems can all be engineered around.
- Garbage collection-like algorithms can be extended to enable a supply of erased blocks
- RAM backed by a small battery or capacitor can buffer writes for later re-writing to flash
- Controller chips can be built in high volume with multiple data paths
But at what cost? The first two require well-engineered software and some sort of CPU to run it. Since it is software it will have bugs. Can it be any more reliable than current drive firmware?
The dilemma
For enterprise use, flash-based SSDs need to be rock-solid, which implies a lot of careful and costly engineering. For consumer use, they need to be very high volume, which means low-cost.
It is a similar problem to RAID controllers: very low-end RAID controllers aren’t reliable enough for enterprise use. They also aren’t cheap enough – or easy enough – for consumers to buy in volume. RAID controllers have engineering problems similar to flash translation layers.
Making flash drives look like disks makes them easy to integrate, but if you really need performance it also makes them costly – like the $10k for the flash drive EMC is using in the Sym.
Flash in the disk controller?
As I’m writing this a NetApp exec says that flash will be disruptive because by placing flash in a disk controller they will reduce the need for the costly and highly profitable fibre channel disks. That could be correct. It sounds smarter than sticking flash on a disk.
The StorageMojo take
Despite the miracles of cost-reduction and integration the industry regularly performs, some things, like power provisioning, don’t get cheaper. High-quality software engineering doesn’t either. That is what high-performance flash drives require.
The high-performance consumer flash drive seems to be a mirage. I’d like to be proven wrong, but today’s notebook SSDs don’t offer superior application performance and cost 10x as much. Hardly a recipe for success.
Update: Intel is planning to offer “high-performance” flash drives with partner Micron. I saw an impressive demo – is there any other kind? – at the Storage Visions conference. But with the early marketing missteps of Samsung, it looks like the consumer flash drive may fall off the hype cycle into a deep ditch. Flash drive marketers: now is the time for precision marketing if you ever hope to establish a mass market. Consumers remember unkept promises. Until you are cheaper. End update.
Comments welcome, as always. Also check out BPLRU: A Buffer Management Scheme for Improving Random Writes in Flash Storage by two Samsung researchers, Hyojun Kim and Seongjun Ahn for a nice intro to flash issues.
That’s not quite right. With NAND Flash you erase blocks (sometimes called sectors) but you read and write pages. A typical part may have 64 pages per block.
See Figure 4 of Micron Tech Note 29-19 (http://download.micron.com/pdf/technotes/nand/tn2919.pdf) for an excellent visual explanation.
Christopher,
While it is true that flash can read and write single pages, most flash chips write a single page by re-writing an entire block. IIRC some chips have a limited – like 3 single page – write limit without a block rewrite. However that technique works it doesn’t seem to have caught on.
Check out the chip data sheets for more info or StorageMojo’s SSD coverage.
Robin
E2EIoD stands for End-2-End Information on Demand.
My name is Robert Pearson. I have no claim to fame. Just a few good ideas.
I have a 256 MB flash drive I purchased in 2003 for ~$80 and was glad to get it.
Since 2003 I have used this drive for storing personal Information. I have never filled it up. Nor do I plan to test it by writing it full and deleting it all to test how long it will last. In addition, I now own 2 ea. 1 GB, and 1 ea. 2 GB flash drives. All purchased for much less than $80 ea. I have purchase plans for an 8 GB for $35.
I can replicate my entire Personal Computing world with 3 flash drives. One for the OS, one for the Information Storage and one for the Portable Apps. This is done for convenient management. Same way I do my disk drives. I have been working on making this Portable Computing Environment Plug-n-Play (PCE-PnP). Think in terms of what is required when the Stored Information URL is changed for whatever reason. EMC promised “soft-links” at the 1999 Phoenix Tech Conference. That would be nice.
What’s my point?
What’s all the fuss about?
The PCE Plug-n-Play would be a lot easier if flash were re-designed from the original design goals of “photo albums online” and replacements for “rotating rust” to take advantage of their true capability.
It may take a while before they are ready for the Enterprise. SCSI has come a long way to SAS and IDE to SATA. Remember the short-comings of SCSI?
Having an I/O map of your IT shop is a good thing for deciding where the “writes” and “reads” are. Today it would be good to add I/O by Content. In particular for your “defined” Information Stack (IS).
I work mostly with Information Retrieval using a vaporware SFO (Search, FInd, Obtain) function. This is 100% “reads”. If I have an area that is “write” intensive”, I have no problem leaving a SAS/SATA solution in place. Flash adds more value in other uses.
I’m surprised by the blank looks I get when I ask people what their Storage desires are? Then I ask what their Information Stack (IS) process looks like? Then I ask them if they have a Design-2-Implementation-2-Management picture or roadmap of this?
It is fairly easy to set up a matrix where you can compare your Information Stack needs, your Storage desires and how a particular Unit of Technology meets these.
This is unique to each IT shop. This is an easy way to see if flash would help.
Robin, I applaud your continuing commentary on the lack of “Lower Metric” responsibility by vendors.
i have read the chip data sheets and written software to deal with NAND and NOR flash chips.
typical NAND flash parts do not require re-writing an entire block as a unit. that’s the unit of erasure, but only that.
there are some poorly design ftl’s that erase and re-write entire blocks at a time, but they are just that — poorly designed.
typical NAND flash parts only require that pages in a block be programmed sequentially. pages do not need to be programmed simultaneously.
this sequential page programming rqeuirement is trivial for a log structured store.
what’s more many SLC parts support partial page writes — a single page can be partionioned and programmed multiple times, typically up to four times.
Your blog of March 11 on the future of flash technology is right on….as far as it goes. While you identify write performance as a concern, write endurance and especially flash read and program disturb phenomena are of equal or greater concern for high performance, high duty cycle enterprise applications.
Traditional approaches do not adequately address these concerns and result in performance expectations not being met together with a high risk of read and program disturbs turning into uncorrectable errors. I believe new, non-traditional, controller architecture approaches (such as Pliant’s) will be developed providing solutions to these concerns resulting in even higher performance SSD’s without adding significant cost over existing controllers.
The future of SSD IS becoming clear. When these advanced controllers / SSD’s become available later this year it is expected the acceptance of SSD in the enterprise market will be greatly accelerated. I expect to see broad adoption in the enterprise during 2009.