Abstract
Event Log Exchange
(ELE) is a common programming pattern based on immutable state and messaging. ELE sidesteps traditional challenges in distributed consistency, at the expense of introducing new challenges in designing space reclamation protocols to avoid consuming unbounded storage.
We introduce
Edelweiss
, a sublanguage of Bloom that provides an ELE programming model, yet automatically reclaims space without programmer assistance. We describe techniques to analyze Edelweiss programs and automatically generate application-specific distributed space reclamation logic. We show how Edelweiss can be used to elegantly implement a variety of communication and distributed storage protocols; the storage reclamation code generated by Edelweiss effectively garbage-collects state and often matches hand-written protocols from the literature.
Subject
General Earth and Planetary Sciences,Water Science and Technology,Geography, Planning and Development
Cited by
3 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Optimizing Distributed Protocols with Query Rewrites;Proceedings of the ACM on Management of Data;2024-03-12
2. Katara: synthesizing CRDTs with verified lifting;Proceedings of the ACM on Programming Languages;2022-10-31
3. DIEL: Interactive Visualization Beyond the Here and Now;IEEE Transactions on Visualization and Computer Graphics;2022-01