Layered diagram of a key-value store with WAL, memtable, SSTables, and compaction.

Building a Mini LSM-Tree Key-Value Store in Rust: A CV-Grade Systems Project

Build a runnable LSM-tree key-value store with a write-ahead log in Rust, from WAL append to SSTable flush to compaction. The exact project to make your CV read like a database engineer’s.

September 2, 2026 · 12 min · 2532 words · martinuke0
Diagram of a log-structured merge tree with memtable, immutable memtables, and SSTable levels on disk.

Architecting Log-Structured Merge Trees for Write-Intensive Distributed Databases

How modern distributed databases turn the write-amplification problem into a throughput advantage, and what it costs you on the read path.

September 2, 2026 · 10 min · 2057 words · martinuke0
Illustration of a B‑link tree node with side pointers bypassing locks.

Reducing Lock Contention with Side Pointers in B‑link Trees

Side pointers provide a low‑overhead way to break hot‑spot locks in B‑link trees, improving scalability without sacrificing correctness.

May 18, 2026 · 9 min · 1849 words · martinuke0
Illustration of two database rows diverging under snapshot isolation.

When Snapshot Isolation Fails to Prevent Write Skew

Snapshot isolation prevents many concurrency bugs but still allows the subtle write‑skew anomaly. This article explains why, shows real‑world examples, and offers concrete mitigation techniques.

May 18, 2026 · 8 min · 1581 words · martinuke0
Diagram of overlapping database snapshots representing row versions.

The Hidden Tradeoffs of Row Versioning in Modern Databases

Row versioning powers snapshot isolation but brings hidden costs. This article uncovers those tradeoffs and offers practical mitigation tactics.

May 16, 2026 · 7 min · 1424 words · martinuke0
Feedback