2dbi
Home/Palantir/Design an In-Memory Database With Transactions
PPalantir·DSASWE-2Decision / Coding (Decic)

Design an In-Memory Database With Transactions

Problem

Implement an in-memory key-value database supporting set, get, delete, multi-field records, and nested transactions with begin, commit, and rollback.

Example

begin(); set(a,1); begin(); set(a,2); rollback(); get(a) -> 1; commit()

Constraints

  • Nested transactions must roll back to the correct snapshot

What Palantir looks for

This is a signature Palantir 'Decision/Coding' problem — implementation-heavy. Use a stack of change-logs for rollback; discuss isolation.

added 6 days ago
LeadersAccount