LazyLog: A New Shared Log Abstraction and Design for Modern Low-Latency Applications

Shared logs offer linearizable total order across storage shards. However, they enforce this order eagerly upon ingestion, leading to high latencies. We observe that in many modern shared-log applications, while linearizable ordering is necessary, it is not required eagerly when ingesting data but o...

Full description

Saved in:
Bibliographic Details
Published inACM transactions on computer systems
Main Authors Luo, Xuhao, Bhat, Shreesha Gopalakrishna, Hu, Jiyu, Alagappan, Ramnatthan, Ganesan, Aishwarya
Format Journal Article
LanguageEnglish
Published 19.08.2025
Online AccessGet full text
ISSN0734-2071
1557-7333
1557-7333
DOI10.1145/3750445

Cover

More Information
Summary:Shared logs offer linearizable total order across storage shards. However, they enforce this order eagerly upon ingestion, leading to high latencies. We observe that in many modern shared-log applications, while linearizable ordering is necessary, it is not required eagerly when ingesting data but only later when data is consumed. Further, readers are naturally decoupled in time from writers in these applications. Based on this insight, we propose LazyLog, a novel shared log abstraction. LazyLog lazily binds records (across shards) to linearizable global positions and enforces this before a log position can be read. Such lazy ordering enables low ingestion latencies. Given the time decoupling, LazyLog can establish the order well before reads arrive, minimizing overhead upon reads. We build two LazyLog systems that provide linearizable total order across shards. Our experiments show that LazyLog systems deliver significantly lower latencies than conventional, eager-ordering shared logs.
ISSN:0734-2071
1557-7333
1557-7333
DOI:10.1145/3750445