These factors and other differences from HDDs give rise to write amplification, which can rise to a factor of 100 times the amount of user data actually being stored. Consequently, these factors also limit the life expectancy of the SSD. Figure 1 shows the basic life expectancy formula that affects all SSDs and Figure 2 shows the details of the formula:
A typical MLC drive might have the characteristics shown in Figure 3.
where:
Capacity = 128 Gbytes
P/E cycles = 10,000
Write speed from the host = 125 Mbytes/s
Duty cycle (when the drive is accessed for reads or writes) = 40% of the time
Read:Write ratio (percentage of time an access to the drive is a write, versus a read) = 33% of the time
Write amplification (assuming a conservative number) = 40
Clearly, 23 days is too short a lifespan to deploy in an enterprise environment. To overcome the endurance problem, SSD manufacturers use one or more of these five techniques:
- Combining MLC and SLC flash on the same device, which extends endurance by storing more active data on the higher-endurance SLC memory, but still lowering the total cost by using some MLC memory.
- Over-provisioning, which extends endurance by making more flash available. For example, an SSD with twice as much actual storage as its stated capacity would have twice the endurance as a drive in which flash and capacity had a 1:1 ratio (no over-provisioning). Of course this over-provisioning would also double the cost.
- DRAM caches, which extend endurance by aggregating some writes before sending it to the flash memory and using it for other housekeeping (rather than the flash memory). Naturally, the DRAM also adds costs.
- Daily write limitations, which extend the life of the drive by restricting the number of writes to the flash each day. For example, one vendor’s warranty specifies a limit of 20 Gbytes per day written from the host, which can be reached in less than five minutes on that same drive.
- Reduced warranties, (less than five years) which account for lower endurance by simply reducing the guaranteed life of the drive.
Poor write performance: While random read performance in a typical MLC-based SSD can get up to 10,000-20,000 IOPS, random write performance is significantly less. Even a so-called “high-performance” SSD today delivers roughly less than 1000 IOPS of write performance (Fig. 4). This is generally caused by a high write amplification factor and by a need to restrict writes to extend the drive’s endurance.