How many individual read or write operations a disk can handle per second,
regardless of data size. Small random reads (databases, indexes) are IOPS-bound.
SSDs vastly outperform spinning disks on this metric.
Real numbers
HDD (spinning disk)
100 – 200 IOPS
SATA SSD
5k – 80k IOPS
NVMe SSD (local, cloud)
100k – 1M+ IOPS
AWS io2 Block Express
256k IOPS
Scale trigger
Disk queue length > 1 consistently → upgrade to NVMe or add storage nodes
real world
AWS EBS io2NVMe localPostgres WAL
Total data transferred to/from disk per second. Matters for large sequential reads:
log streaming, analytics scans, backups. Distinct from IOPS — you can have high throughput
with few large I/Os, or high IOPS with many small I/Os.
Real numbers
SATA SSD sequential
500 MB/s
NVMe SSD sequential
3 – 7 GB/s
Kafka segment writes
~1 GB/s sequential
Scale trigger
I/O wait > 20% in CPU profile → separate hot data to faster storage tier
real world
Kafka log segmentsSnowflake spillClickHouse