Storage fundamentals
Write amplification
Write amplification is the effect by which a storage device or system writes more data to its physical media than the application asked it to store. It is expressed as a factor: a write amplification factor of 3 means that every gigabyte written by the host results in three gigabytes written to the media.
Why does flash amplify writes?
NAND flash can be written a page at a time and erased only a whole block at a time, and a block holds many pages. To update data, the drive writes the new version to a free page and marks the old one stale. When free blocks run short, garbage collection picks a block, copies its still-valid pages elsewhere and erases it. Those copies are writes the host never requested. Wear leveling, which moves data so that all blocks age evenly, adds more.
What increases or reduces it?
The factor depends on how the drive is used as much as on the drive.
| Factor | Effect on write amplification |
|---|---|
| Random small overwrites | Raises it, blocks fill with a mix of valid and stale pages |
| Sequential large writes | Keeps it low, whole blocks become stale together |
| Drive nearly full | Raises it, garbage collection has little free space to work with |
| Over-provisioning (reserved spare area) | Lowers it |
| TRIM or deallocate commands | Lowers it, the drive learns which data is no longer needed |
| Compression inside the drive | Can bring the factor below 1 |
Why does it matter?
Flash cells endure a limited number of program and erase cycles. Write amplification multiplies the wear caused by each host write, so a drive with a factor of 4 reaches the end of its rated life four times sooner than one at a factor of 1 under the same workload. It also costs performance, because garbage collection competes with incoming writes. Endurance ratings such as drive writes per day assume a particular amplification, which is why real-world lifespan varies with workload. Flash storage endurance covers the ratings.
Where else does write amplification occur?
The same effect appears above the device. A file system or database that journals data writes it twice. Log-structured storage engines rewrite data during compaction. Parity updates in RAID, and replicating or erasure coding small objects across nodes, turn one logical write into several physical ones. Shingled hard drives rewrite neighboring data when part of a zone changes. The factors multiply through the stack, so a design that looks modest at each layer can produce heavy total wear. Measuring bytes written at the media against bytes written by applications shows the combined figure.
Frequently asked questions
What is a good write amplification factor?
Close to 1 for sequential workloads. Random-write workloads on a full drive can see factors of several times that.
Can write amplification be below 1?
Yes, when the drive or system compresses or deduplicates data before writing it.
Do hard drives have write amplification?
Conventional drives overwrite in place, so not at the device level. Shingled drives and the software layers above any drive can introduce it.
Related terms
- Flash storage endurance: the lifespan that amplification shortens.
- NAND flash: the medium whose erase rules cause it.
- SSD: the device where it is most often measured.
- Shingled magnetic recording (SMR): hard drives with a similar rewrite cost.
- Sequential vs. random I/O: the workload pattern that drives the factor.