Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

NOC-NOC: Towards Performance-optimal Distributed Transactions

Published: 26 March 2024 Publication History

Abstract

Substantial research efforts have been devoted to studying the performance optimality problem for distributed database transactions. However, they focus just on optimizing transactional reads, and thus overlook crucial factors, such as the efficiency of writes, which also impact the overall system performance. Motivated by a recent study on Twitter's workloads showing the prominence of write-heavy workloads in practice, we make a substantial step towards performance-optimal distributed transactions by also aiming to optimize writes, a fundamentally new dimension to this problem. We propose a new design objective and establish impossibility results with respect to the achievable isolation levels. Guided by these results, we present two new transaction algorithms with different isolation guarantees that fulfill this design objective. Our evaluation demonstrates that these algorithms outperform the state of the art.

References

[1]
Mustaque Ahamad, Gil Neiger, James E. Burns, Prince Kohli, and Phillip W. Hutto. 1995. Causal Memory: Definitions, Implementation, and Programming. Distributed Comput., Vol. 9, 1 (1995), 37--49.
[2]
Deepthi Devaki Akkoorath, Alejandro Z. Tomsic, Manuel Bravo, Zhongmiao Li, Tyler Crain, Annette Bieniusa, Nuno M. Preguicc a, and Marc Shapiro. 2016. Cure: Strong Semantics Meets High Availability and Low Latency. In ICDCS 2016. IEEE Computer Society, 405--414.
[3]
Karolos Antoniadis, Diego Didona, Rachid Guerraoui, and Willy Zwaenepoel. 2020. The Impossibility of Fast Transactions. In IPDPS'20. IEEE, 1143--1154.
[4]
Masoud Saeida Ardekani, Pierre Sutra, Nuno Preguiça, and Marc Shapiro. 2013. Non-Monotonic Snapshot Isolation. arxiv: 1306.3906 [cs.DC]
[5]
Peter Bailis, Alan D. Fekete, Ali Ghodsi, Joseph M. Hellerstein, and Ion Stoica. 2016. Scalable Atomic Visibility with RAMP Transactions. ACM Trans. Database Syst., Vol. 41, 3 (2016), 15:1--15:45.
[6]
Hal Berenson, Philip A. Bernstein, Jim Gray, Jim Melton, Elizabeth J. O'Neil, and Patrick E. O'Neil. 1995. A Critique of ANSI SQL Isolation Levels. In SIGMOD'95. ACM Press, 1--10.
[7]
Philip A. Bernstein, Vassos Hadzilacos, and Nathan Goodman. 1987. Concurrency Control and Recovery in Database Systems. Addison-Wesley.
[8]
Eric A. Brewer. 2000. Towards robust distributed systems (abstract). In PODC. 7.
[9]
Nathan Bronson, Zach Amsden, George Cabrera, Prasad Chakka, Peter Dimov, Hui Ding, Jack Ferris, Anthony Giardullo, Sachin Kulkarni, Harry C. Li, Mark Marchukov, Dmitri Petrov, Lovro Puzar, Yee Jiun Song, and Venkateshwaran Venkataramani. 2013. TAO: Facebook's Distributed Data Store for the Social Graph. In ATC'13. USENIX Association, 49--60.
[10]
Qingchao Cai, Wentian Guo, Hao Zhang, Divyakant Agrawal, Gang Chen, Beng Chin Ooi, Kian-Lee Tan, Yong Meng Teo, and Sheng Wang. 2018. Efficient Distributed Memory Management with RDMA and Caching. Proc. VLDB Endow., Vol. 11, 11 (2018), 1604--1617.
[11]
Audrey Cheng, Xiao Shi, Aaron Kabcenell, Shilpa Lawande, Hamza Qadeer, Jason Chan, Harrison Tin, Ryan Zhao, Peter Bailis, Mahesh Balakrishnan, Nathan Bronson, Natacha Crooks, and Ion Stoica. 2022. TAOBench: An End-to-End Benchmark for Social Network Workloads. Proc. VLDB Endow., Vol. 15, 9 (2022), 1965--1977.
[12]
Audrey Cheng, Xiao Shi, Lu Pan, Anthony Simpson, Neil Wheaton, Shilpa Lawande, Nathan Bronson, Peter Bailis, Natacha Crooks, and Ion Stoica. 2021. RAMP-TAO: Layering Atomic Transactions on Facebook's Online TAO Data Store. Proc. VLDB Endow., Vol. 14, 12 (2021), 3014--3027.
[13]
Khuzaima Daudjee and Kenneth Salem. 2004. Lazy Database Replication with Ordering Guarantees. In ICDE 2004. IEEE Computer Society, 424--435.
[14]
Diego Didona, Panagiota Fatourou, Rachid Guerraoui, Jingjing Wang, and Willy Zwaenepoel. 2019. Distributed Transactional Systems Cannot Be Fast. In SPAA'19. ACM, 369--380.
[15]
Diego Didona, Rachid Guerraoui, Jingjing Wang, and Willy Zwaenepoel. 2018. Causal Consistency and Latency Optimality: Friend or Foe? Proc. VLDB Endow., Vol. 11, 11 (2018), 1618--1632.
[16]
Jiaqing Du, Calin Iorgulescu, Amitabha Roy, and Willy Zwaenepoel. 2014. GentleRain: Cheap and Scalable Causal Consistency with Physical Clocks. In SoCC 2014. ACM, 4:1--4:13.
[17]
Dmitry Duplyakin, Robert Ricci, Aleksander Maricq, Gary Wong, Jonathon Duerig, Eric Eide, Leigh Stoller, Mike Hibler, David Johnson, Kirk Webb, Aditya Akella, Kuangching Wang, Glenn Ricart, Larry Landweber, Chip Elliott, Michael Zink, Emmanuel Cecchet, Snigdhaswin Kar, and Prabodh Mishra. 2019. The Design and Operation of CloudLab. In ATC'19. USENIX Association, 1--14.
[18]
ElectricSQL. Accessed in July, 2023. https://electric-sql.com/.
[19]
Shabnam Ghasemirad. 2022. Mechanized Data Consistency Models for Distributed Database Transactions. Master's thesis. ETH Zurich. https://doi.org/10.3929/ethz-b-000581334.
[20]
Seth Gilbert and Nancy A. Lynch. 2002. Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services. SIGACT News, Vol. 33, 2 (2002), 51--59.
[21]
Wojciech Golab, Xiaozhou Li, and Mehul A. Shah. 2011. Analyzing consistency properties for fun and profit. In PODC'11. ACM, 197--206.
[22]
Jeffrey Helt, Matthew Burke, Amit Levy, and Wyatt Lloyd. 2021. Regular Sequential Serializability and Regular Sequential Consistency. In SOSP'21. ACM, 163--179.
[23]
Robert Kallman, Hideaki Kimura, Jonathan Natkins, Andrew Pavlo, Alexander Rasin, Stanley Zdonik, Evan P. C. Jones, Samuel Madden, Michael Stonebraker, Yang Zhang, John Hugg, and Daniel J. Abadi. 2008. H-Store: A High-Performance, Distributed Main Memory Transaction Processing System. Proc. VLDB Endow., Vol. 1, 2 (2008), 1496--1499.
[24]
Kishori M. Konwar, Wyatt Lloyd, Haonan Lu, and Nancy A. Lynch. 2021. SNOW Revisited: Understanding When Ideal READ Transactions Are Possible. In IPDPS'21. IEEE, 922--931.
[25]
Butler Lampson and Howard E. Sturgis. 1979. Crash recovery in a distributed storage system. Xerox Palo Alto Research Center.
[26]
Hyeontaek Lim, Michael Kaminsky, and David G. Andersen. 2017. Cicada: Dependably Fast Multi-Core In-Memory Transactions. In SIGMOD '17. ACM, 21--35.
[27]
Si Liu. 2022. All in One: Design, Verification, and Implementation of SNOW-Optimal Read Atomic Transactions. ACM Trans. Softw. Eng. Methodol., Vol. 31, 3 (2022).
[28]
Si Liu, Luca Multazzu, Hengfeng Wei, and David Basin. 2023. Artifact and technical report for “NOC-NOC: Towards Performance-optimal Distributed Transactions”. https://github.com/siliunobi/NOC-NOC.
[29]
Si Liu, Peter Csaba Ö lveczky, Muntasir Raihan Rahman, Jatin Ganhotra, Indranil Gupta, and José Meseguer. 2016. Formal modeling and analysis of RAMP transaction systems. In SAC'16. ACM, 1700--1707.
[30]
Wyatt Lloyd, Michael J. Freedman, Michael Kaminsky, and David G. Andersen. 2011. Don't settle for eventual: scalable causal consistency for wide-area storage with COPS. In SOSP 2011. ACM, 401--416.
[31]
Wyatt Lloyd, Michael J. Freedman, Michael Kaminsky, and David G. Andersen. 2013. Stronger Semantics for Low-Latency Geo-Replicated Storage. In NSDI'13. USENIX Association, 313--328.
[32]
Haonan Lu, Christopher Hodsdon, Khiem Ngo, Shuai Mu, and Wyatt Lloyd. 2016. The SNOW Theorem and Latency-Optimal Read-Only Transactions. In OSDI'16. USENIX Association, 135--150.
[33]
Haonan Lu, Shuai Mu, Siddhartha Sen, and Wyatt Lloyd. 2023. NCC: Natural Concurrency Control for Strictly Serializable Datastores by Avoiding the Timestamp-Inversion Pitfall. In OSDI'23. USENIX Association, 305--323.
[34]
Haonan Lu, Siddhartha Sen, and Wyatt Lloyd. 2020a. Performance-Optimal Read-Only Transactions. In OSDI'20. USENIX Association, 333--349.
[35]
Haonan Lu, Kaushik Veeraraghavan, Philippe Ajoux, Jim Hunt, Yee Jiun Song, Wendy Tobagus, Sanjeev Kumar, and Wyatt Lloyd. 2015. Existential consistency: measuring and understanding consistency at Facebook. In SOSP 2015. ACM, 295--310.
[36]
Yi Lu, Xiangyao Yu, Lei Cao, and Samuel Madden. 2020b. Aria: A Fast and Practical Deterministic OLTP Database. Proc. VLDB Endow., Vol. 13, 12 (2020), 2047--2060.
[37]
Yi Lu, Xiangyao Yu, and Samuel Madden. 2019. STAR: Scaling Transactions through Asymmetric Replication. Proc. VLDB Endow., Vol. 12, 11 (2019), 1316--1329.
[38]
Microsoft. Accessed in July, 2023. Azure Cosmos DB. https://learn.microsoft.com/en-us/azure/cosmos-db/consistency-levels.
[39]
MongoDB. Accessed in July, 2023. Read Isolation, Consistency, and Recency. https://docs.mongodb.com/manual/core/read-isolation-consistency-recency/.
[40]
MySQL. Accessed in July, 2023. MySQL Cluster CGE. https://www.mysql.com/products/cluster/.
[41]
Neo4j. Accessed in July, 2023. https://neo4j.com/docs/operations-manual/current/clustering/introduction/.
[42]
Christos H. Papadimitriou. 1979. The Serializability of Concurrent Database Updates. J. ACM, Vol. 26, 4 (1979), 631--653.
[43]
Matthieu Perrin, Achour Mostefaoui, and Claude Jard. 2016. Causal Consistency: Beyond Memory. SIGPLAN Not., Vol. 51, 8, Article 26 (2016), 26:1--26:12 pages.
[44]
Jeff Shute, Radek Vingralek, Bart Samwel, Ben Handy, Chad Whipkey, Eric Rollins, Mircea Oancea, Kyle Littlefield, David Menestrina, Stephan Ellner, John Cieslewicz, Ian Rae, Traian Stancescu, and Himani Apte. 2013. F1: A Distributed SQL Database That Scales. Proc. VLDB Endow., Vol. 6, 11 (2013), 1068--1079.
[45]
Yair Sovran, Russell Power, Marcos K. Aguilera, and Jinyang Li. 2011. Transactional storage for geo-replicated systems. In SOSP'11. ACM, 385--400.
[46]
Kristina Spirovska, Diego Didona, and Willy Zwaenepoel. 2019. PaRiS: Causally Consistent Transactions with Non-blocking Reads and Partial Replication. In ICDCS 2019. IEEE, 304--316.
[47]
Kristina Spirovska, Diego Didona, and Willy Zwaenepoel. 2021. Optimistic Causal Consistency for Geo-Replicated Key-Value Stores. IEEE Trans. Parallel Distributed Syst., Vol. 32, 3 (2021), 527--542.
[48]
Douglas B. Terry, Alan J. Demers, Karin Petersen, Mike Spreitzer, Marvin Theimer, and Brent B. Welch. 1994. Session Guarantees for Weakly Consistent Replicated Data. In PDIS. IEEE Computer Society, 140--149.
[49]
Alejandro Z. Tomsic, Manuel Bravo, and Marc Shapiro. 2018. Distributed transactional reads: the strong, the quick, the fresh & the impossible. In Middleware'18. ACM, 120--133.
[50]
Yang Wang, Miao Yu, Yujie Hui, Fang Zhou, Yuyang Huang, Rui Zhu, Xueyuan Ren, Tianxi Li, and Xiaoyi Lu. 2022. A Study of Database Performance Sensitivity to Experiment Settings. Proc. VLDB Endow., Vol. 15, 7 (2022), 1439--1452.
[51]
Brian White, Jay Lepreau, Leigh Stoller, Robert Ricci, Shashi Guruprasad, Mac Newbold, Mike Hibler, Chad Barb, and Abhijeet Joglekar. 2002. An Integrated Experimental Environment for Distributed Systems and Networks. In OSDI. USENIX Association, 255--270.
[52]
Juncheng Yang, Yao Yue, and K. V. Rashmi. 2021. A Large-scale Analysis of Hundreds of In-memory Key-value Cache Clusters at Twitter. ACM Trans. Storage, Vol. 17, 3 (2021), 17:1--17:35.
[53]
Irene Zhang, Naveen Kr. Sharma, Adriana Szekeres, Arvind Krishnamurthy, and Dan R. K. Ports. 2015. Building consistent transactions with inconsistent replication. In SOSP 2015. ACM, 263--278.
[54]
Fang Zhou, Yifan Gan, Sixiang Ma, and Yang Wang. 2018. wPerf: Generic Off-CPU Analysis to Identify Bottleneck Waiting Events. In OSDI'19. USENIX Association, 527--543.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Proceedings of the ACM on Management of Data
Proceedings of the ACM on Management of Data  Volume 2, Issue 1
SIGMOD
February 2024
1874 pages
EISSN:2836-6573
DOI:10.1145/3654807
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 26 March 2024
Published in PACMMOD Volume 2, Issue 1

Permissions

Request permissions for this article.

Author Tags

  1. concurrency control
  2. impossibility results
  3. isolation levels

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 172
    Total Downloads
  • Downloads (Last 12 months)172
  • Downloads (Last 6 weeks)28
Reflects downloads up to 30 Aug 2024

Other Metrics

Citations

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media