May 6, 2026 | 15 min read
Building an LSM-Tree Storage Engine in Go, Part 2: The Memtable
## Where We Are In Part 1 we built a Write-Ahead Log. Every mutation — write or delete — is recorded to disk and fsync...
Engineering Notes
I explore how modern systems behave under pressure, document design tradeoffs, and share field notes from building dependable software.
Consistency models and how they surface in real-world systems.
Storage engines and the tradeoffs inside modern databases.
Reliability patterns for resilient services under failure.
## Where We Are In Part 1 we built a Write-Ahead Log. Every mutation — write or delete — is recorded to disk and fsync...
## Where We Are Post 1 built the WAL — every write is fsynced to disk before being acknowledged. Post 2 built the memt...
## Implementing a Write-Ahead Log in Go A Write-Ahead Log is the mechanism behind the D in ACID. Before any mutation r...