Log-structured Protocols in Delos

ACM Symposium on Operating Systems Principles (SOSP)

Abstract

Developers have access to a wide range of storage APIs and functionality in large-scale systems, such as relational databases, key-value stores, and namespaces. However, this diversity comes at a cost: each API is implemented by a complex distributed system that is dicult to develop and operate. Delos amortizes this cost by enabling dierent APIs on a shared codebase and operational platform. The primary innovation in Delos is a log-structured protocol: a fine-grained replicated state machine executing above a shared log that can be layered into reusable protocol stacks under dierent databases. We built and deployed two production databases using Delos at Facebook, creating nine dierent log-structured protocols in the process. We show via experiments and production data that log-structured protocols impose low overhead, while allowing optimizations that can improve latency by up to 100X (e.g., via leasing) and throughput by up to 2X (e.g., via batching).

Featured Publications