Skip to content

Write Amplification

Write amplification (WA) is one of the most important concepts in storage systems. A single logical write from your application causes multiple physical writes inside the device or system.

WAF = Physical bytes written / Logical bytes written

A WAF of 1.0 is ideal. In practice: 1.5–30+ depending on system and workload.

SSDs erase at block level (256KB–4MB) but write at page level (4KB). Result: updating 4KB can force reading, erasing, and rewriting an entire block.

# Measure WAF from /proc/diskstats
def measure_waf(sectors_before, sectors_after, ops_before, ops_after):
physical_kb = ((sectors_after - sectors_before) * 512) / 1024
logical_ops = ops_after - ops_before
return physical_kb / logical_ops if logical_ops > 0 else 0
levels, fan_out = 4, 10
print(f"Estimated LSM WAF: {levels * fan_out / 2}x") # 20x
TechniqueSystemEffect
Sequential writesSSD/HDD10–100x vs random
Over-provisioningSSDLess GC pressure
Tiered compactionLSMFewer rewrites
Erasure codingDistributed1.5x vs 3x replication