PROJECTS

COMPLETED · ECS 165A · 5-PERSON TEAM

L-Store: A Lineage-Based Storage Engine for Unified OLTP and OLAP

A five-person academic team build of L-Store, the lineage-based storage architecture from Prof. Mohammad Sadoghi's research: columnar base and tail pages, B+ tree indexing, a buffer pool, a full query layer, and two-phase-locking concurrency control, built from scratch over a 10-week quarter.

L-Store: A Lineage-Based Storage Engine for Unified OLTP and OLAP
PythonB+ TreeBuffer Pool2PL LockingConcurrencyDisk Persistence

THE STORY

Personal projects and solo work are easy; a multi-layered, 10-week academic project with four other people, each with their own lives and schedules, was not. GitHub branches, pull requests, committing changes, concurrent edits, errors, debugging, test files: the logistics were harder than the code itself, and much more rewarding to get right. It felt closer to the work done in corporate settings with teams, and to what a professional environment actually expects, far beyond the coding and conceptual execution itself.

FEATURES

Disk Persistence

Page files + metadata serialized to disk with crash recovery

Buffer Pool

LRU/MRU eviction policy with a 1000-page in-memory cache

Page Range Tables

Base + tail record architecture for efficient updates

Query Layer

Full CRUD + aggregation + record versioning

Transactions

2PL no-wait locking with rollback on conflict

Concurrency

Consistent data under heavy concurrent reads and writes

CODE

Private repo (course project) · available on request