Epoxy: ACID Transactions Across Diverse Data Stores
Peter Kraft, Qian Li, Xinjing Zhou, Peter Bailis, Michael Stonebraker, Xiangyao Yu, Matei Zaharia
Abstract
Developers are increasingly building applications that incorporate multiple data stores, for example to manage heterogeneous data. Often, these require transactional safety for operations across stores, but few systems support such guarantees. To solve this problem, we introduce Epoxy, a protocol for providing transactions across heterogeneous data stores. We make two contributions. First, we adapt multi-version concurrency control to a cross-data store setting, storing versioning information in record metadata and filtering reads with predicates on metadata so they only see record versions in a global transaction snapshot. Second, we show our design enables an atomic commit protocol that does not require data stores implement the participant protocol of two-phase commit, requiring only durable writes. We implement Epoxy for five data stores: Postgres, Elasticsearch, MongoDB, Google Cloud Storage, and MySQL. We evaluate it by adapting TPC-C and microservice workloads to a multi-data store environment. We find it has comparable performance to the distributed transaction protocol XA on TPC-C while providing stronger guarantees like isolation, and has overhead of <10% compared to a non-transactional baseline on read-mostly microservice workloads and 72% on write-heavy workloads.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext e045f0b7-a8b8-4352-9ff9-3f819eba0f44Cited by top-tier papers7
- Hermes: Off-the-Shelf Real-Time Transactional AnalyticsElena Milkai, Xiangyao Yu, Jignesh M. PatelVLDB 2025 · 2 citations
- GeoTP: Latency-Aware Geo-Distributed Transaction Processing in Database MiddlewaresQiyu Zhuang, Xinyue Shi, Shuang Liu, Wei Lu et al.ICDE 2025 · 2 citations
- Sonata: Multi-Database Transactions Made Fast and SerializableChuzhe Tang, Zhaoguo Wang, Jinyang Li, Haibo ChenVLDB 2025 · 1 citation
- Interoperable ACID Transactions for Open Table FormatsTobias Götz, Daniel Ritter, Muhammad El-Hindi, Jana GicevaVLDB 2026
- Concurrency Control as a ServiceWeixing Zhou, Yanfeng Zhang, Xinji Zhou, Zhiyou Wang et al.VLDB 2025
Builds on3
- Data Management in Microservices: State of the Practice, Challenges, and Research DirectionsRodrigo N. Laigner, Yongluan Zhou, Marcos Antonio Vaz Salles, Yijian Liu et al.VLDB 2021 · 108 citations
- Ad Hoc Transactions in Web Applications: The Good, the Bad, and the UglyChuzhe Tang, Zhaoguo Wang, Xiaodong Zhang, Qianmian Yu et al.SIGMOD 2022 · 20 citations
- Skeena: Efficient and Consistent Cross-Engine TransactionsJianqiu Zhang, Kaisong Huang, Tianzheng Wang, King LvSIGMOD 2022 · 10 citations
Related papers
- Massively Parallel Multi-Versioned Transaction ProcessingShujian Qian, Ashvin GoelOSDI 2024 · 5 citations
- Chardonnay: Fast and General Datacenter Transactions for On-Disk DatabasesTamer Eldeeb, Xincheng Xie, Philip A. Bernstein, Asaf Cidon et al.OSDI 2023 · 12 citations
- Epoch-based Commit and Replication in Distributed OLTP DatabasesYi Lu, Xiangyao Yu, Lei Cao, Samuel MaddenVLDB 2021 · 52 citations
- Mako: Speculative Distributed Transactions with Geo-ReplicationWeihai Shen, Yang Cui, Siddhartha Sen, Sebastian Angel et al.OSDI 2025 · 4 citations
- Cornus: Atomic Commit for a Cloud DBMS with Storage DisaggregationZhihan Guo, Xinyu Zeng, Kan Wu, Wuh-Chwen Hwang et al.VLDB 2023 · 23 citations
