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

An evaluation of distributed concurrency control

Published: 01 January 2017 Publication History

Abstract

Increasing transaction volumes have led to a resurgence of interest in distributed transaction processing. In particular, partitioning data across several servers can improve throughput by allowing servers to process transactions in parallel. But executing transactions across servers limits the scalability and performance of these systems.
In this paper, we quantify the effects of distribution on concurrency control protocols in a distributed environment. We evaluate six classic and modern protocols in an in-memory distributed database evaluation framework called Deneva, providing an apples-to-apples comparison between each. Our results expose severe limitations of distributed transaction processing engines. Moreover, in our analysis, we identify several protocol-specific scalability bottlenecks. We conclude that to achieve truly scalable operation, distributed concurrency control solutions must seek a tighter coupling with either novel network hardware (in the local area) or applications (via data modeling and semantically-aware execution), or both.

References

[1]
VoltDB. http://voltdb.com.
[2]
A. Adya. Weak consistency: a generalized theory and optimistic implementations for distributed transactions. PhD thesis, MIT, 1999.
[3]
R. Agrawal, M. J. Carey, and M. Livny. Concurrency control performance modeling: alternatives and implications. TODS, 12(4):609--654, 1987.
[4]
P. Bailis, A. Davidson, A. Fekete, A. Ghodsi, J. M. Hellerstein, and I. Stoica. Highly Available Transactions: Virtues and limitations. In VLDB, 2014.
[5]
P. Bailis et al. Feral Concurrency Control: An empirical investigation of modern application integrity. In SIGMOD, 2015.
[6]
P. Bailis, A. Fekete, M. J. Franklin, A. Ghodsi, J. M. Hellerstein, and I. Stoica. Coordination Avoidance in Database Systems. In VLDB, 2015.
[7]
M. Balakrishnan et al. Tango: Distributed data structures over a shared log. In SOSP, 2013.
[8]
V. Balegas, S. Duarte, C. Ferreira, R. Rodrigues, N. Preguiça, M. Najafzadeh, and M. Shapiro. Putting consistency back into eventual consistency. In EuroSys, 2015.
[9]
P. Bernstein, V. Hadzilacos, and N. Goodman. Concurrency control and recovery in database systems, volume 370. Addison-Wesley, 1987.
[10]
P. A. Bernstein and S. Das. Rethinking eventual consistency. In SIGMOD, pages 923--928. ACM, 2013.
[11]
P. A. Bernstein and N. Goodman. Concurrency control in distributed database systems. ACM Comput. Surv., 13(2):185--221, June 1981.
[12]
P. A. Bernstein and N. Goodman. Multiversion Concurrency Control - Theory and Algorithms. ACM Trans. Database Syst., 8(4):465--483, Dec. 1983.
[13]
A. Bhide, F. Bancilhon, and D. Dewitt. An analysis of three transaction processing architectures. In VLDB, 1988.
[14]
A. Bhide and M. Stonebraker. A performance comparison of two architectures for fast transaction processing. In ICDE, 1988.
[15]
C. Binnig, D. Kossmann, T. Kraska, and S. Loesing. How is the weather tomorrow? towards a benchmark for the cloud. In DBTest, 2009.
[16]
M. J. Carey and M. Livny. Distributed concurrency control performance: A study of algorithms, distribution, and replication. In VLDB, pages 13--25, 1988.
[17]
F. Chang, J. Dean, S. Ghemawat, et al. Bigtable: A distributed storage system for structured data. In OSDI, 2006.
[18]
Y. Chen, S. Alspaugh, and R. Katz. Interactive analytical processing in big data systems: A cross-industry study of mapreduce workloads. In VLDB, 2012.
[19]
B. F. Cooper, A. Silberstein, E. Tam, R. Ramakrishnan, and R. Sears. Benchmarking cloud serving systems with ycsb. SoCC, pages 143--154, 2010.
[20]
J. C. Corbett et al. Spanner: Google's globally-distributed database. In OSDI, 2012.
[21]
J. Cowling and B. Liskov. Granola: low-overhead distributed transaction coordination. In USENIX ATC, 2012.
[22]
C. Curino, E. Jones, Y. Zhang, and S. Madden. Schism: a workload-driven approach to database replication and partitioning. VLDB, 3(1--2):48--57, 2010.
[23]
S. Das, D. Agrawal, and A. El Abbadi. G-store: a scalable data store for transactional multi key access in the cloud. In SoCC, pages 163--174, 2010.
[24]
D. E. Difallah, A. Pavlo, C. Curino, and P. Cudre-Mauroux. OLTP-Bench: An extensible testbed for benchmarking relational databases. In VLDB, 2014.
[25]
B. Ding, L. Kot, A. Demers, and J. Gehrke. Centiman: elastic, high performance optimistic concurrency control by watermarking. In SoCC, 2015.
[26]
A. Dragojević, D. Narayanan, E. B. Nightingale, M. Renzelmann, A. Shamis, A. Badam, and M. Castro. No compromises: distributed transactions with consistency, availability, and performance. In SOSP, 2015.
[27]
R. Escriva, B. Wong, and E. G. Sirer. Warp: Multi-key transactions for keyvalue stores. United Networks, LLC, Tech. Rep, 5, 2013.
[28]
K. P. Eswaran et al. The notions of consistency and predicate locks in a database system. Communications of the ACM, 19(11):624--633, 1976.
[29]
A. Ghazal, T. Rabl, M. Hu, F. Raab, M. Poess, A. Crolotte, and H.-A. Jacobsen. Bigbench: towards an industry standard benchmark for big data analytics. In SIGMOD, pages 1197--1208, 2013.
[30]
J. Gray, R. Lorie, G. Putzolu, and I. Traiger. Granularity of locks and degrees of consistency in a shared data base. Technical report, IBM, 1976.
[31]
P. Helland. Life beyond distributed transactions: an apostate's opinion. In CIDR, pages 132--141, 2007.
[32]
J. Huang, J. A. Stankovic, K. Ramamritham, and D. F. Towsley. Experimental evaluation of real-time optimistic concurrency control schemes. In VLDB, 1991.
[33]
R. Kallman et al. H-store: a high-performance, distributed main memory transaction processing system. In VLDB, 2008.
[34]
D. Karger, E. Lehman, T. Leighton, R. Panigrahy, M. Levine, and D. Lewin. Consistent hashing and random trees: Distributed caching protocols for relieving hot spots on the world wide web. In STOC, pages 654--663, 1997.
[35]
S. Kimball. Living without atomic clocks. https://www.cockroachlabs.com/blog/living-without-atomic-clocks/, February 2016.
[36]
R. Krebs, A. Wert, and S. Kounev. Multi-tenancy performance benchmark for web application platforms. In Web Engineering, pages 424--438. Springer, 2013.
[37]
H.-T. Kung and C. H. Papadimitriou. An optimality theory of concurrency control for databases. In SIGMOD, 1979.
[38]
H. T. Kung and J. T. Robinson. On Optimistic Methods for Concurrency Control. ACM Trans. Database Syst., 6(2):213--226, June 1981.
[39]
H. A. Mahmoud, V. Arora, F. Nawab, D. Agrawal, and A. El Abbadi. Maat: Effective and scalable coordination of distributed transactions in the cloud. In VLDB, 2014.
[40]
N. Malviya, A. Weisberg, S. Madden, and M. Stonebraker. Rethinking main memory oltp recovery. In ICDE, pages 604--615. IEEE, 2014.
[41]
S. Mu, Y. Cui, Y. Zhang, W. Lloyd, and J. Li. Extracting more concurrency from distributed transactions. In OSDI, 2014.
[42]
M. Nicola and M. Jarke. Performance modeling of distributed and replicated databases. TKDE, 12(4):645--672, 2000.
[43]
A. Pavlo et al. Skew-aware automatic database partitioning in shared-nothing, parallel oltp systems. In SIGMOD, pages 61--72, 2012.
[44]
T. Rabl, S. Gómez-Villamor, M. Sadoghi, V. Muntés-Mulero, H.-A. Jacobsen, and S. Mankovskii. Solving big data challenges for enterprise application performance management. In VLDB, 2012.
[45]
K. Ren, A. Thomson, and D. J. Abadi. An Evaluation of the Advantages and Disadvantages of Deterministic Database Systems. Proc. VLDB Endow., 7(10):821--832, June 2014.
[46]
S. Roy, L. Kot, G. Bender, B. Ding, H. Hojjat, C. Koch, N. Foster, and J. Gehrke. The homeostasis protocol: Avoiding transaction coordination through program analysis. In SIGMOD, 2015.
[47]
J. Shute et al. F1: A distributed SQL database that scales. In VLDB, 2013.
[48]
K. Sivaramakrishnan, G. Kaki, and S. Jagannathan. Declarative programming over eventually consistent data stores. In PLDI, 2015.
[49]
M. Stonebraker. The case for shared nothing. IEEE Database Eng. Bull., 9, 1986.
[50]
M. Stonebraker, S. Madden, D. J. Abadi, S. Harizopoulos, N. Hachem, and P. Helland. The end of an architectural era: (it's time for a complete rewrite). VLDB, pages 1150--1160, 2007.
[51]
M. Sustrik. nanomsg. http://nanomsg.org.
[52]
M. Tamer Özsu and P. Valduriez. Principles of distributed database systems. Springer, 2011.
[53]
A. Thomson and D. J. Abadi. The case for determinism in database systems. Proc. VLDB Endow., 3:70--80, September 2010.
[54]
A. Thomson, T. Diamond, S.-C. Weng, K. Ren, P. Shao, and D. J. Abadi. Calvin: Fast distributed transactions for partitioned database systems. In SIGMOD, 2012.
[55]
Transaction Processing Performance Council. TPC Benchmark C (Revision 5.11), February 2010.
[56]
A. Turner, A. Fox, J. Payne, and H. S. Kim. C-mart: Benchmarking the cloud. IEEE TPDS, 24(6):1256--1266, 2013.
[57]
L. Wang, J. Zhan, C. Luo, Y. Zhu, Q. Yang, Y. He, W. Gao, Z. Jia, Y. Shi, S. Zhang, et al. BigDataBench: A big data benchmark suite from internet services. In HPCA, pages 488--499. IEEE, 2014.
[58]
X. Wei, J. Shi, Y. Chen, R. Chen, and H. Chen. Fast in-memory transaction processing using RDMA and HTM. In SOSP, 2015.
[59]
M. Welsh, D. Culler, and E. Brewer. Seda: an architecture for well-conditioned, scalable internet services. In SOSP, pages 230--243, 2001.
[60]
X. Yu, G. Bezerra, A. Pavlo, S. Devadas, and M. Stonebraker. Staring into the Abyss: An Evaluation of Concurrency Control with One Thousand Cores. In VLDB, 2014.
[61]
I. Zhang, N. K. Sharma, A. Szekeres, A. Krishnamurthy, and D. R. Ports. Building consistent transactions with inconsistent replication. In SOSP, 2015.
[62]
Y. Zhang et al. Transaction chains: achieving serializability with low latency in geo-distributed storage systems. In SOSP, 2013.

Cited By

View all
  • (2024)RCBench: an RDMA-enabled transaction framework for analyzing concurrency control algorithmsThe VLDB Journal — The International Journal on Very Large Data Bases10.1007/s00778-023-00821-033:2(543-567)Online publication date: 1-Mar-2024
  • (2023)Taurus MM: Bringing Multi-Master to the CloudProceedings of the VLDB Endowment10.14778/3611540.361154216:12(3488-3500)Online publication date: 1-Aug-2023
  • (2023)Efficient Distributed Transaction Processing in Heterogeneous NetworksProceedings of the VLDB Endowment10.14778/3583140.358315316:6(1372-1385)Online publication date: 20-Apr-2023
  • Show More Cited By

Index Terms

  1. An evaluation of distributed concurrency control
      Index terms have been assigned to the content through auto-classification.

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image Proceedings of the VLDB Endowment
      Proceedings of the VLDB Endowment  Volume 10, Issue 5
      January 2017
      168 pages
      ISSN:2150-8097
      Issue’s Table of Contents

      Publisher

      VLDB Endowment

      Publication History

      Published: 01 January 2017
      Published in PVLDB Volume 10, Issue 5

      Qualifiers

      • Research-article

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)155
      • Downloads (Last 6 weeks)10
      Reflects downloads up to 30 Aug 2024

      Other Metrics

      Citations

      Cited By

      View all
      • (2024)RCBench: an RDMA-enabled transaction framework for analyzing concurrency control algorithmsThe VLDB Journal — The International Journal on Very Large Data Bases10.1007/s00778-023-00821-033:2(543-567)Online publication date: 1-Mar-2024
      • (2023)Taurus MM: Bringing Multi-Master to the CloudProceedings of the VLDB Endowment10.14778/3611540.361154216:12(3488-3500)Online publication date: 1-Aug-2023
      • (2023)Efficient Distributed Transaction Processing in Heterogeneous NetworksProceedings of the VLDB Endowment10.14778/3583140.358315316:6(1372-1385)Online publication date: 20-Apr-2023
      • (2023)VeriTxn: Verifiable Transactions for Cloud-Native Databases with Storage DisaggregationProceedings of the ACM on Management of Data10.1145/36267641:4(1-27)Online publication date: 12-Dec-2023
      • (2023)GeoGauss: Strongly Consistent and Light-Coordinated OLTP for Geo-Replicated SQL DatabaseProceedings of the ACM on Management of Data10.1145/35889161:1(1-27)Online publication date: 30-May-2023
      • (2023)Dissecting BFT Consensus: In Trusted Components we Trust!Proceedings of the Eighteenth European Conference on Computer Systems10.1145/3552326.3587455(521-539)Online publication date: 8-May-2023
      • (2022)Making Cache Monotonic and ConsistentProceedings of the VLDB Endowment10.14778/3574245.357427116:4(891-904)Online publication date: 1-Dec-2022
      • (2022)The case for distributed shared-memory databases with RDMA-enabled memory disaggregationProceedings of the VLDB Endowment10.14778/3561261.356126316:1(15-22)Online publication date: 1-Sep-2022
      • (2022)LotusProceedings of the VLDB Endowment10.14778/3551793.355184315:11(2939-2952)Online publication date: 1-Jul-2022
      • (2022)TAOBenchProceedings of the VLDB Endowment10.14778/3538598.353861615:9(1965-1977)Online publication date: 27-Jul-2022
      • Show More Cited By

      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