30 likes | 125 Views
Stasis: Flexible Transaction Layer. Modular xact system with careful APIs Reimplementation of ARIES from scratch User can add new operators Stasis ensures recovery/archive works Open source Not a DBMS; no SQL, no optimizer Very flexible buffering, logging, page formats, etc.
E N D
Stasis: Flexible Transaction Layer • Modular xact system with careful APIs • Reimplementation of ARIES from scratch • User can add new operators • Stasis ensures recovery/archive works • Open source • Not a DBMS; no SQL, no optimizer • Very flexible buffering, logging, page formats, etc.
Wide range of uses • Fast, efficient persistent objects (no SQL) • High-throughput replication (LSM trees) • Graph algorithms • Recoverable virtual memory • Transactional cluster hash table
LSN-Free Pages • Novel variant of ARIES pages • NO LSN on the page • Enable contiguous layout of large objects • Enables variable-sized pages • Solves the torn-page problem • Good fit for flash (no notion of blocks) • Recovery based on: • Conservative estimate of (missing) LSN • Roll forward of idempotent updates • OK to apply a redo twice