Design Serverless Postgres (Separated Compute & Storage)
Problem Design Neon's core: serverless Postgres that separates compute from storage, scales to zero, and supports instant branching.
Functional requirements
- Stateless Postgres compute nodes.
- Durable, multi-tenant page storage reconstructed from the WAL.
- Scale compute to zero and resume fast.
- Instant copy-on-write branches.
Non-functional requirements
- Many databases, bursty usage.
- Fast cold resume.
- Durable, point-in-time recovery.
Areas to go deep
- Compute/storage separation with the WAL as source of truth.
- Page reconstruction by LSN and WAL durability.
- Scale-to-zero + fast resume, and copy-on-write branching / PITR.
added …