🤖 AI Summary
This work addresses the longstanding challenge of reconciling correctness guarantees with high performance in database storage systems by proposing a compositional construction methodology grounded in formal specifications. The approach leverages formal specifications to guide a Java implementation and employs storage equivalence proofs to rigorously ensure correctness. Crucially, it decouples performance optimizations from functional logic, enabling flexible composition of components. Using this methodology, the authors reimplement RocksDB’s tiered storage architecture and develop CobbleDB, a prototype system that demonstrates strong real-world performance and practical applicability while maintaining strict correctness guarantees.
📝 Abstract
We present a composition-based approach to building correctby-construction database backing stores. In previous work, we specified the behaviour of several store variants and proved their correctness and equivalence. Here, we derive a Java implementation: the simplicity of the specification makes manual construction straightforward. We leverage spec-guaranteed store equivalence to compose performance features, then demonstrate practical value with CobbleDB, a reimplementation of RocksDB's levelled storage.