LSM vs B+tree engine choice

DesignMedium40 minMeta style

Your task

Your team is choosing the storage engine for a new service and the platform offers both an LSM-tree engine and a B+tree engine under the same API (think MongoDB WiredTiger vs MyRocks, or RocksDB vs an in-place B-tree). The workload: write-heavy (10:1 write:read), keys are random UUIDs, values ~1KB, data grows ~1TB/month, reads are mostly point lookups of recently written keys, on commodity SSDs where write endurance and disk cost matter. Pick an engine, justify it on first principles, and state the conditions under which you'd switch to the other.

It covers

  • Lsm vs btree
  • Workload fit
  • Engine selection