Research & Papers

EdgeStore is built on peer-reviewed database research. Each paper below directly influenced a specific architectural decision — from the compaction algorithm to the segment format to the replication protocol.

Primary Design Reference

Deathtime-Based Garbage Collection

Lee et al., VLDB 2026

Read Paper

"By grouping records by their predicted invalidation time (deathtime) rather than write time or size, compaction can collect fully-expired cohorts without reading or rewriting any live data."

How it shaped EdgeStore

This paper is the single most important influence on EdgeStore's storage engine. The authors demonstrate that traditional LSM compaction (level-based, size-tiered) suffers from high write amplification because it repeatedly rewrites live data alongside tombstones and expired records.

EdgeStore implements their cohort-grouped approach directly:

  • Every record is assigned a cohort bucket = death_time / cohort_window (default 1 hour)
  • Records with TTL cluster with others expiring in the same window
  • Records without TTL fall back to write-time cohorts (temporal locality)
  • Compaction prioritizes fully-expired cohorts first — no live-record reads or writes
  • Partially-expired cohorts get one merge pass; only live records are relocated

The paper measured a 7.8x reduction in write amplification on TTL workloads compared to RocksDB. EdgeStore's design targets the same asymptotic behavior.

Code mapping

See edgestore/src/compactor.rsidentify_cohorts(), collect_expired_cohort(), and compact_partial_cohort() implement the paper's algorithm.

SSD Architecture

SSD Write Amplification Analysis

Durner et al., VLDB 2023

Read Paper

"Application-level write amplification compounds with SSD firmware garbage collection. An LSM tree with 30x WA creates 90x total device WA when the SSD GC factor is 3x."

How it shaped EdgeStore

Durner's analysis showed that the write amplification problem is worse than previously understood: it's not just the database's fault, but a compound effect between application WA and SSD firmware WA.

EdgeStore's design directly addresses both layers:

  • Append-only writes — never rewrite a page in place. SSD firmware sees sequential, full-page writes instead of scattered updates.
  • 4 KiB block alignment — segment blocks match SSD page boundaries, eliminating read-modify-write cycles.
  • Cohort invalidation alignment — when a cohort expires, all pages in those segments become invalid simultaneously. The SSD GC can reclaim entire erase blocks without copying valid remnants.

The compound effect is dramatic:

RocksDB:    30x (app WA) × 3x (SSD GC) = 90x total device WA
EdgeStore:   1x (app WA) × 1.2x (SSD GC) = 1.2x total device WA
Format Design

SlateDB: Cloud-Native LSM

SlateDB Project (Open Source)

GitHub

How it shaped EdgeStore

SlateDB is an open-source cloud-native LSM that influenced EdgeStore's segment format and manifest design. While EdgeStore uses deathtime-cohort compaction instead of SlateDB's level-based approach, the segment file structure and manifest patterns draw directly from SlateDB's clean separations:

  • .dat file — sorted key-value blocks, ZSTD compressed, 4 KiB aligned
  • .idx file — sparse index with stride-64 sampling for efficient seeks
  • .xf file — xor filter (not Bloom) for fast negative lookup checks
  • .meta file — JSON metadata with cohort_bucket, death_time, min/max keys, BLAKE3 hash
  • manifest.mf — append-only, CRC32C checksummed, live segment registry

SlateDB's insight that "segments should be immutable, self-describing, and content-addressed" became a core EdgeStore principle.

Decoupled Storage

NVMe and S3 in Decoupled Storage

EloqData, 2025

Read Article

How it shaped EdgeStore

EloqData's architecture separates hot NVMe storage from cold S3 archive using a unified object model. EdgeStore adopts the same separation principle in its StorageBackend trait:

  • DefaultStorageBackend — local pread/pwrite on NVMe/SSD
  • MemoryStorageBackend — in-memory for tests and ephemeral workloads
  • FdpStorageBackend — NVMe 2.0 FDP placement hints for cohort-aligned writes
  • RemoteStore trait — content-addressed upload/download for S3 or HTTP replication

The key insight: segments are immutable blobs that can live on any backend. A segment written to local NVMe can be uploaded to S3 unchanged, then downloaded and imported into another node. Content addressing (BLAKE3) guarantees integrity across transports.

Why This Matters

Most embedded databases are built on 1990s LSM-tree theory (LevelDB, RocksDB). EdgeStore is one of the first to apply 2020s SSD-aware research to an embedded, library-first design.

Traditional LSM

  • Level-based compaction rewrites live data repeatedly
  • TTL records mixed with live data in same levels
  • Write amplification: 10-30x
  • SSD GC forced to copy valid remnants

EdgeStore (Deathtime-Cohort)

  • Cohort-grouped compaction skips expired data entirely
  • TTL records cluster by death time
  • Write amplification: ~1x on TTL workloads
  • SSD GC reclaims full erase blocks