Solid-state storage is being adopted in the enterprise but not at the pace that many observers originally predicted. While there are a variety of reasons for this, one that can’t be ignored is the cost. Solid-state storage -- which, for the enterprise, is typically based on single-level cell (SLC) flash -- is expensive. In many cases, if your customer doesn’t have a specific application performance problem that’s impacting corporate revenue, they are not going to buy SLC-based solid-state storage. There are many applications that could benefit from the solid-state performance boost, but for most of them, that boost has not yet been shown to be worth the investment. But, multi-level cell (MLC) flash in enterprise arrays may be just the solution that your customers are looking for to make the solid-state jump. MLC flash is cheaper than SLC, making solid-state technology more appealing for a broader set of applications, perhaps those that could benefit from a measurable but not massive jump in performance.
What is MLC flash?
Solid-state flash
Requires Membership to View
To gain access to this and all member only content, please provide the following information:
By submitting your registration information to SearchStorageChannel.com you agree to receive email communications from the TechTarget network of sites, and/or third party content providers that have relationships with TechTarget, based on your topic interests and activity, including updates on new content, event notifications, new site launches and market research surveys. Please verify all information and selections above. You may unsubscribe at any time from one or more of the services you have selected by editing your profile, unsubscribing via email or by contacting us here
- Your use of SearchStorageChannel.com is governed by our Terms of Use
- We designed our Privacy Policy to provide you with important disclosures about how we collect and use your registration and other information. We encourage you to read the Privacy Policy, and to use it to help make informed decisions.
- If you reside outside of the United States, by submitting this registration information you consent to having your personal data transferred to and processed in the United States.
Protecting MLC flash storage
While it’s true that MLC will fail more often than SLC flash, advancements in intelligence around MLC and how it’s protected are changing the dynamics. First, MLC production processes have improved; now some suppliers offer EMLC (enterprise MLC) with write cycles that are as high as 6x that of standard MLC (30,000 vs. 5,000). Second, the process of writing data to the cells has improved such that no single cell of the flash disk becomes hot; wear leveling makes sure that writes are spread evenly across the available cells. Third, most if not all EMLC systems have spare unreported capacity so that if a cell does wear out, its data can be written to a new drive and cell. And besides these special considerations around the flash memory itself, it’s also important to remember that in many cases this memory will be installed into an enterprise-class storage system, so technologies like RAID and mirroring can be used to provide further protection from failure.
MLC flash memory performance issues
Now let’s talk about the performance concerns around MLC. While MLC is not as fast as SLC, it is faster than a single 15,000 rpm drive in both read and write operations. Many data centers are looking for a measurable but cost-correct performance boost. SLC flash may be overkill whereas MLC may be just right.
The big limiter in the performance of MLC, or that of any flash-based solid-state drive (SSD), is when the drive reaches what’s called steady state. This is when the drive has been completely filled up for the first time and there are no more empty cells to put data into. From that point forward, any new data that the flash controller needs to write must be written to cells that have no in-use data on them. The not-in-use data is erased -- which in the flash world means the cell is written to with zeros -- and then the new data is written to the cell. Obviously, these two steady-state writes takes time; factor in the parity writing in a RAID algorithm, and the performance gets worse. And, this write cycle can deliver erratic and unpredictable I/O performance, especially when the system is busy with a lot of write traffic and is near capacity.
To combat this problem, most flash controllers now have the ability to do something called garbage collection. During idle times the flash controller will scan the drive looking for cells that store data that has been marked as removable by the operating system (typically a delete command) and perform the erase write ahead of time. Garbage collection is more important in MLC or EMLC-based systems because they are slower at processing a write cycle (more data per cell) so having those cells cleaned out ahead of time is critical. Another technique that storage systems use is preserving some flash memory as unallocated. For example, if 20% is left in reserve, in most cases the write cycle would not have to be performed while data is being written to the drive. The flash controller will use the spare cells.
MLC flash makes sense for customers who have applications where performance needs to be improved but not to an extreme level. There is enough technology and redundancy now surrounding these systems that they can be implemented with confidence into many environments without the risk of data loss.
This was first published in March 2011