Flash is the hot topic in storage right now. It offers read and write speeds up to hundreds of times faster than spinning disk hard disk drives (HDDs).
That flash SSD has arisen now is fortuitous, as virtualisation of servers and particularly desktops have provided a need for increased storage I/O.
But, what are the different types of flash storage available, and what business IT use cases are they suited to? In this podcast, I go through the basics of flash storage technology and give a rundown of multi-level cell (MLC), enterprise multi-level cell (eMLC), single-level cell (SLC) and triple-level cell (TLC) flash, commenting on their place in the market and the use cases they are suited to.
Flash SSD basics
The advantages of flash storage, compared with electro-mechanical HDDs, are the result of their complete lack of moving parts. HDDs have spinning magnetic platters and heads that move across them to read and write. It is that movement by these two components that makes the HDD such a laggard when compared with flash.
Flash storage, by contrast, omits all the moving parts, and reads and writes directly to transistors, also known as cells, in the flash chip. At the most fundamental level, it is the turning on or off of electrical charge that provide the 1 or 0 and the building block of data storage in flash.
But here is also where the Achilles heel of flash resides. An HDD head simply flips magnetic 1s and 0s to change the state of its most fundamental unit of storage, and there is no difference between reads and writes at that level of operations.
Flash is different when it comes to writes, and must erase what already exists before writing a new state to the cell. And every time that operation happens the chip suffers degradation that shortens its life.
And in reality, flash – and HDD for that matter – do not just operate with a bunch of discrete 1s and 0s being written and read at cell level. Cells form, for example, 4kb pages and bigger blocks of, say 128kb or higher. So, to accommodate data on a flash chip, a lot of background erases, writes and moves and tidying up have to take place, all of which multiplies the amount of wear.
There are two key things to take away from this:
- Flash stores data as a charge or no charge indicating a 1 or a 0 bit state.
- Flash chips suffer wear over time.
Knowing those two things allows you to understand the differences between flash types, such as MLC, SLC and TLC.
SLC is the simplest in operation of all the flash types and the longest lasting and most robust
Single level cell (SLC) is probably the best place to start describing the different flash types available. It has – as the name suggests – one cell per bit, with a choice of two states.
SLC is the simplest in operation of all the flash types, due to having only one bit per cell, and is therefore the longest lasting and most robust because the firmware does not have to negotiate many levels and states of data within cells during operations.
SLC is also the most expensive of flash SSD types, and in typical supplier product implementations will provide input/output operations per second (IOPS) levels into the millions. It is currently used for the most performance-hungry operations and where cost is of little object, such as in financial sector transactions.
Having said that, it seems that most storage suppliers are focusing their efforts on MLC and its variants, and it is mostly what I come across when talking to customers about their flash implementations.
MLC is slower than SLC and wears out more quickly
MLC and eMLC
Multi-level cell (MLC), as its name suggests, stores multiple bits per cell. For that reason, wear during write operations is greater and the overheads involved in maintaining the distribution of data on the chip are more onerous than with SLC.
That is because data is stored using different voltages in the same cell, and this means higher levels of complexity, especially better error correction in the controlling software.
For those reasons, MLC is slower than SLC and wears out more quickly. It has been most associated with the flash memory used in consumer products, such as phones and cameras, but flash manufacturers have worked at overcoming some of the limitations that consigned MLC to the consumer arena, developing techniques to mitigate cell degradation to create so called enterprise MLC (eMLC).
Having said that, some suppliers are happy selling what they call MLC to the enterprise in the knowledge that, with the right controller, some of its limitations can be moderated. In some cases chip makers sell both MLC and eMLC, with each having different performance characteristics, eMLC being more robust.
Currently, however, eMLC is the flash drive type most commonly found in enterprise storage products and provides, typically, IOPS in the hundreds of thousands. It is often used to speed up storage I/O for virtual servers and, in particular, virtual desktop operations.
TLC drives are best suited to workloads comprised overwhelmingly of reads, such as streaming media, web hosting and booting
And finally, there is triple-level cell (TLC), which is the newest kid on the flash block, with several suppliers working on TLC flash and products launched by Samsung Semiconductor in late 2012. As the name suggests, it puts three bits in each cell and, consequently, wear levels, error correction requirements, power and cooling are higher still than with MLC.
But, given TLC’s storage density, it offers the prospect of bringing down the price per gigabyte of flash storage to something near spinning disk. So, we can expect manufacturers to work on overcoming these hurdles because TLC potentially offers an order of magnitude boost in price/performance compared with MLC and SLC, as exists between different classes of HDD.