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

MaaT: effective and scalable coordination of distributed transactions in the cloud

Published: 01 January 2014 Publication History
  • Get Citation Alerts
  • Abstract

    The past decade has witnessed an increasing adoption of cloud database technology, which provides better scalability, availability, and fault-tolerance via transparent partitioning and replication, and automatic load balancing and fail-over. However, only a small number of cloud databases provide strong consistency guarantees for distributed transactions, despite decades of research on distributed transaction processing, due to practical challenges that arise in the cloud setting, where failures are the norm, and human administration is minimal. For example, dealing with locks left by transactions initiated by failed machines, and determining a multi-programming level that avoids thrashing without under-utilizing available resources, are some of the challenges that arise when using lock-based transaction processing mechanisms in the cloud context. Even in the case of optimistic concurrency control, most proposals in the literature deal with distributed validation but still require the database to acquire locks during two-phase commit when installing updates of a single transaction on multiple machines. Very little theoretical work has been done to entirely eliminate the need for locking in distributed transactions, including locks acquired during two-phase commit. In this paper, we re-design optimistic concurrency control to eliminate any need for locking even for atomic commitment, while handling the practical issues in earlier theoretical work related to this problem. We conduct an extensive experimental study to evaluate our approach against lock-based methods under various setups and workloads, and demonstrate that our approach provides many practical advantages in the cloud context.

    References

    [1]
    http://www.mysql.com/products/cluster/.
    [2]
    http://api.rubyonrails.org/.
    [3]
    http://developers.google.com/appengine/.
    [4]
    http://www.ibm.com/software/data/db2/.
    [5]
    http://www.oracle.com/database/.
    [6]
    A. Adya, J. A. Blakeley, S. Melnik, and S. Muralidhar. Anatomy of the ado.net entity framework. In SIGMOD, 2007.
    [7]
    D. Agrawal, A. J. Bernstein, P. Gupta, and S. Sengupta. Distributed optimistic concurrency control with reduced rollback. Distributed Computing, 2(1):45--59, 1987.
    [8]
    D. Agrawal, A. El Abbadi, R. Jeffers, and L. Lin. Ordered shared locks for real-time databases. The VLDB Journal, 4(1):87--126, Jan. 1995.
    [9]
    R. Agrawal, M. J. Carey, and M. Livny. Concurrency control performance modeling: alternatives and implications. ACM Trans. Database Syst., 12(4):609--654, Nov. 1987.
    [10]
    J. Baker, C. Bond, J. Corbett, J. J. Furman, A. Khorlin, J. Larson, J.-M. Leon, Y. Li, A. Lloyd, and V. Yushprakh. Megastore: Providing scalable, highly available storage for interactive services. In CIDR, 2011.
    [11]
    R. Bayer, K. Elhardt, J. Heigert, and A. Reiser. Dynamic timestamp allocation for transactions in database systems. In Proceedings of the Second International Symposium on Distributed Data Bases, DDB '82, pages 9--20, 1982.
    [12]
    P. A. Bernstein, I. Cseri, N. Dani, N. Ellis, A. Kalhan, G. Kakivaya, D. B. Lomet, R. Manne, L. Novik, and T. Talius. Adapting microsoft sql server for cloud computing. In ICDE, 2011.
    [13]
    P. A. Bernstein and E. Newcomer. Principles of transaction processing: for the systems professional. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, 1997.
    [14]
    C. Boksenbaum, M. Cart, J. Ferrié, and J.-F. Pons. Certification by intervals of timestamps in distributed database systems. In VLDB, 1984.
    [15]
    S. Ceri and S. S. Owicki. On the use of optimistic methods for concurrency control in distributed databases. In Berkeley Workshop, pages 117--129, 1982.
    [16]
    F. Chang, J. Dean, S. Ghemawat, W. C. Hsieh, D. A. Wallach, M. Burrows, T. Chandra, A. Fikes, and R. E. Gruber. Bigtable: a distributed storage system for structured data. In OSDI, 2006.
    [17]
    J. C. Corbett, J. Dean, M. Epstein, A. Fikes, C. Frost, J. Furman, S. Ghemawat, A. Gubarev, C. Heiser, P. Hochschild, W. Hsieh, S. Kanthak, E. Kogan, H. Li, A. Lloyd, S. Melnik, D. Mwaura, D. Nagle, S. Quinlan, R. Rao, L. Rolig, Y. Saito, M. Szymaniak, C. Taylor, R. Wang, and D. Woodford. Spanner: Google's globally-distributed database. In OSDI, 2012.
    [18]
    C. Curino, E. Jones, Y. Zhang, and S. Madden. Schism: a workload-driven approach to database replication and partitioning. Proc. VLDB Endow., 3(1-2):48--57, Sept. 2010.
    [19]
    G. DeCandia, D. Hastorun, M. Jampani, G. Kakulapati, A. Lakshman, A. Pilchin, S. Sivasubramanian, P. Vosshall, and W. Vogels. Dynamo: amazon's highly available key-value store. In SOSP, 2007.
    [20]
    J. Gray and L. Lamport. Consensus on transaction commit. Technical Report MSR-TR-2003-96, Microsoft Research, 2004.
    [21]
    I. Keidar and D. Dolev. Increasing the resilience of distributed and replicated database systems. J. Comput. Syst. Sci., 57(3):309--324, Dec. 1998.
    [22]
    H. T. Kung and J. T. Robinson. On optimistic methods for concurrency control. ACM Trans. Database Syst., 6(2):213--226, June 1981.
    [23]
    M.-Y. Lai and W. K. Wilkinson. Distributed transaction management in jasmin. In VLDB, 1984.
    [24]
    A. Lakshman and P. Malik. Cassandra: structured storage system on a p2p network. In PODC, 2009.
    [25]
    P.-A. Larson, S. Blanas, C. Diaconu, C. Freedman, J. M. Patel, and M. Zwilling. High-performance concurrency control mechanisms for main-memory databases. Proc. VLDB Endow., 5(4):298--309, Dec. 2011.
    [26]
    D. Lomet, A. Fekete, R. Wang, and P. Ward. Multi-version concurrency via timestamp range conflict management. In ICDE, 2012.
    [27]
    C. Mohan. Less optimism about optimistic concurrency control. In Research Issues on Data Engineering, 1992: Transaction and Query Processing, Second International Workshop on, pages 199--204, feb 1992.
    [28]
    S. Patterson, A. J. Elmore, F. Nawab, D. Agrawal, and A. El Abbadi. Serializability, not serial: concurrency control and availability in multi-datacenter datastores. Proc. VLDB Endow., 5(11):1459--1470, July 2012.
    [29]
    A. Pavlo, C. Curino, and S. Zdonik. Skew-aware automatic database partitioning in shared-nothing, parallel oltp systems. In SIGMOD, 2012.
    [30]
    P. Peinl and A. Reuter. Empirical comparison of database concurrency control schemes. In VLDB, 1983.
    [31]
    D. P. Reed. Naming and synchronization in a decentralized computer system. Technical report, Massachusetts Institute of Technology, Cambridge, MA, USA, 1978.
    [32]
    T.-I. Salomie, I. E. Subasu, J. Giceva, and G. Alonso. Database engines on multicores, why parallelize when you can distribute? In EuroSys, 2011.
    [33]
    G. Schlageter. Optimistic methods for concurrency control in distributed database systems. In VLDB, 1981.
    [34]
    M. Seltzer. Oracle nosql database. In Oracle White Paper, 2011.
    [35]
    D. Skeen and M. Stonebraker. A formal model of crash recovery in a distributed systems. IEEE Transactions on Software Engineering, pages 219--228, 1983.
    [36]
    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). In VLDB, 2007.
    [37]
    A. Tatarowicz, C. Curino, E. Jones, and S. Madden. Lookup tables: Fine-grained partitioning for distributed databases. In ICDE, 2012.
    [38]
    A. Thomasian. Two-phase locking performance and its thrashing behavior. ACM Trans. Database Syst., 18(4):579--625, 1993.
    [39]
    A. Thomasian. Distributed optimistic concurrency control methods for high-performance transaction processing. IEEE Trans. on Knowl. and Data Eng., 10(1):173--189, Jan. 1998.
    [40]
    A. Thomson and D. J. Abadi. The case for determinism in database systems. Proc. VLDB Endow., 3(1-2):70--80, Sept. 2010.
    [41]
    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.
    [42]
    G. Weikum and G. Vossen. Transactional information systems: theory, algorithms, and the practice of concurrency control and recovery. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, 2001.

    Cited By

    View all

    Index Terms

    1. MaaT: effective and scalable coordination of distributed transactions in the cloud
            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 7, Issue 5
            Janary 2014
            100 pages
            ISSN:2150-8097
            Issue’s Table of Contents

            Publisher

            VLDB Endowment

            Publication History

            Published: 01 January 2014
            Published in PVLDB Volume 7, Issue 5

            Qualifiers

            • Research-article

            Contributors

            Other Metrics

            Bibliometrics & Citations

            Bibliometrics

            Article Metrics

            • Downloads (Last 12 months)18
            • Downloads (Last 6 weeks)1

            Other Metrics

            Citations

            Cited By

            View all
            • (2021)Epoch-based commit and replication in distributed OLTP databasesProceedings of the VLDB Endowment10.14778/3446095.344609814:5(743-756)Online publication date: 23-Mar-2021
            • (2021)ChillerACM SIGMOD Record10.1145/3471485.347149050:1(15-22)Online publication date: 17-Jun-2021
            • (2021)Efficiently Supporting Adaptive Multi-Level Serializability Models in Distributed Database SystemsProceedings of the 2021 International Conference on Management of Data10.1145/3448016.3450579(2908-2910)Online publication date: 9-Jun-2021
            • (2021)Achieving low tail-latency and high scalability for serializable transactions in edge computingProceedings of the Sixteenth European Conference on Computer Systems10.1145/3447786.3456238(210-227)Online publication date: 21-Apr-2021
            • (2021)Multi-shot distributed transaction commitDistributed Computing10.1007/s00446-021-00389-434:4(301-318)Online publication date: 1-Aug-2021
            • (2020)SpitzProceedings of the VLDB Endowment10.14778/3415478.341556713:12(3449-3460)Online publication date: 14-Sep-2020
            • (2020)AriaProceedings of the VLDB Endowment10.14778/3407790.340780813:12(2047-2060)Online publication date: 14-Sep-2020
            • (2020)Chiller: Contention-centric Transaction Execution and Data Partitioning for Modern NetworksProceedings of the 2020 ACM SIGMOD International Conference on Management of Data10.1145/3318464.3389724(511-526)Online publication date: 11-Jun-2020
            • (2019)STARProceedings of the VLDB Endowment10.14778/3342263.334227012:11(1316-1329)Online publication date: 1-Jul-2019
            • (2019)Efficient and non-blocking agreement protocolsDistributed and Parallel Databases10.1007/s10619-019-07267-w38:2(287-333)Online publication date: 13-Apr-2019
            • 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