How to Write to SSDs

2026-03-10Databases

Databases
AI summary

The authors show that using out-of-place writes—where data is written to new locations instead of overwriting old ones—is key for databases to better use SSDs. They create a set of improvements that reduce extra writing caused by managing updates and storage. By changing the LeanStore database to use this method, they test it on different tasks and find it runs much faster and causes much less wear on SSDs. Their design also works well with new types of SSD technology like ZNS and FDP.

out-of-place writesSSD (Solid State Drive)write amplificationDBMS (Database Management System)B-treeLeanStoreOLTP (Online Transaction Processing)YCSB benchmarkTPC-C benchmarkZNS (Zoned Namespace)FDP (Flash Device Power)
Authors
Bohyun Lee, Tobias Ziegler, Viktor Leis
Abstract
This paper demonstrates that adopting out-of-place writes is essential for database systems to fully leverage SSD performance and extend SSD lifespan. We propose a set of out-of-place optimizations that collectively reduce write amplification across both the DBMS and SSD layers. We redesign the in-place, B-tree-based LeanStore to write out-of-place and support these optimizations, and evaluate it on diverse OLTP benchmarks, dataset sizes, and SSDs. The final design improves throughput by 1.65-2.24x and reduces flash writes per transaction by 6.2-9.8x on YCSB-A. On TPC-C with 15,000 warehouses, throughput improves by 2.45x while flash writes decrease by 7.2x. Finally, we show that the architecture can seamlessly support novel SSD interfaces such as ZNS and FDP.