Flash SSDs and flash SSD storage arrays have become increasingly popular. A lot of that popularity comes from the need for speed, or at least the perceived need for speed. The general market perception of SSD storage is that it's always faster than HDD storage. But is that actually true? This is the first of a series of tips that will examine flash SSD fact vs. fiction.
'Flash SSDs are always faster than HDDs'
The majority of IT personnel queried believe this statement to be true. The problem with it is the use of the absolute term "always."
Fact: SSD storage is not always faster than HDD storage.
It depends on the workload, the age of the SSDs, and the point at which SSD flash data is being overwritten.
SSDs have much lower random access and read access latency (less than 100 µs) than HDDs do (where latency ranges from vs. 2.9 ms to 12 ms), making them ideal for both heavy read and random workloads. That lower latency is the direct result of flash SSDs' ability to read data directly and immediately from a specific flash SSD cell location. The results are noticeably faster OS and application boot times, in addition to the data reads.
Flash SSD storage performance degrades noticeably because of write amplification. That degradation slope continues for the life of the flash SSD. Wear leveling reduces the performance degradation slope, but only somewhat. That performance degradation slope is greatly affected by the type of flash NAND utilized. More expensive single-level cell (SLC) flash SSDs have a much gentler slope than enterprise MLC (eMLC), multi-level cell (MLC) or triple-level cell (TLC) flash SSDs.
HDD storage performance also degrades over time as a result of data fragmentation on the disks. Each fragment has to be sought to read the entire data set, which increases latency as fragmentation increases. Fragmentation is a relatively straightforward and easy fix for HDDs, restoring the performance. Unfortunately, SSD write amplification performance degradation is an inevitable flash process that today cannot be stopped. There will come a point in time as SSDs age when their performance will become similar to that of HDDs or worse.
Writes are a seriously weaker flash SSD performance story. Flash SSDs are quite different from HDDs when it comes to writes. All flash SSD writes can occur only on unused or previously erased blocks ("pages" in the vernacular of flash NAND), whereas HDDs can overwrite any and all data without first erasing the data. Flash-SSD-written blocks cannot be overwritten. Those written blocks must first be erased before they can be overwritten. This means that data also can't be easily secure-erased as it can be on HDDs.
SSD controllers attempt to mitigate some of flash SSDs' performance issues by doing background housekeeping (aka garbage collection). Controller garbage collection methodologies vary, but the most common is to overprovision the flash amount by 20% to 50%, depending on the vendor and whether it's SLC, MLC or eMLC.
It means a 200 TB SSD may have 256 TB of capacity. Only 200 TB is actually visible and usable. The additional capacity provides controller headroom to do transparent background garbage collection that should hide flash SSDs' inability to overwrite data without being erased. Written pages holding obsolete data (blocks that have been changed and written on other pages) are swapped out with the excess page capacity. The newly erased pages become the new excess capacity.
Flash SSD headroom shrinks over time as flash NAND cells wear out. Eventually the headroom shrinks to the point where write performance must wait on the write erase cycle, greatly reducing its write performance.
Write performance on the more expensive SLC flash SSDs is generally pretty close to read speeds. That's definitely not the case with eMLC, MLC and especially TLC flash SSDs, where write performance is significantly slower than read performance. The difference between write and read performance on HDDs is nominal.
Flash SSD storage is generally genuinely faster than flash HDD storage. So, when are flash SSDs not faster than HDDs? The answer is when workloads of writes or mixed reads and writes occur on aging and/or heavily written flash SSDs.
About the author:
Marc Staimer is the founder, senior analyst and CDS of Dragon Slayer Consulting in Beaverton, Ore. Marc can be reached at firstname.lastname@example.org.