skip to main content
article

Sprint: a middleware for high-performance transaction processing

Published: 21 March 2007 Publication History

Abstract

Sprint is a middleware infrastructure for high performance and high availability data management. It extends the functionality of a standalone in-memory database (IMDB) server to a cluster of commodity shared-nothing servers. Applications accessing an IMDB are typically limited by the memory capacity of the machine running the IMDB. Sprint partitions and replicates the database into segments and stores them in several data servers. Applications are then limited by the aggregated memory of the machines in the cluster. Transaction synchronization and commitment rely on total-order multicast. Differently from previous approaches, Sprint does not require accurate failure detection to ensure strong consistency, allowing fast reaction to failures. Experiments conducted on a cluster with 32 data servers using TPC-C and a micro-benchmark showed that Sprint can provide very good performance and scalability.

References

[1]
D. Agrawal, G. Alonso, A. E. Abbadi, and I. Stanoi. Exploiting atomic broadcast in replicated databases. In Proceedings of EuroPar (EuroPar'97), Passau (Germany), 1997.
[2]
Y. Amir and C. Tutu. From total order to database replication. In International Conference on Distributed Computing Systems (ICDCS), July 2002.
[3]
P. Bernstein, V. Hadzilacos, and N. Goodman. Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987.
[4]
T. D. Chandra and S. Toueg. Unreliable failure detectors for reliable distributed systems. Journal of the ACM, 43(2):225--267, 1996.
[5]
S. Elnikety, S. Dropsho, and F. Pedone. Tashkent: Uniting durability with transaction ordering for high-performance scalable database replication. In Proceedings of EuroSys, 2006.
[6]
S. Elnikety, F. Pedone, and W. Zwaenepoel. Database replication using generalized snapshot isolation. In Symposium on Reliable Distributed Systems (SRDS'2005), Orlando, USA, 2005.
[7]
FirstSQL Inc. The FirstSQL/J in-memory database system. http://www.firstsql.com.
[8]
H. Garcia-Molina and K. Salem. Main memory database systems: An overview. IEEE Transactions on Knowledge and Data Engineering, 4(6):509--516, 1992.
[9]
J. Gray and L. Lamport. Consensus on transaction commit. ACM Trans. Database Syst., 31(1):133--160, 2006.
[10]
J. N. Gray, P. Helland, P. O'Neil, and D. Shasha. The dangers of replication and a solution. In Proceedings of the 1996 ACM SIGMOD International Conference on Management of Data, Montreal (Canada), 1996.
[11]
J. N. Gray and A. Reuter. Transaction Processing: Concepts and Techniques. Morgan Kaufmann, 1993.
[12]
V. Hadzilacos and S. Toueg. Fault-tolerant broadcasts and related problems. In Distributed Systems, chapter 5. Addison-Wesley, 2nd edition, 1993.
[13]
M. Ji. Affinity-based management of main memory database clusters. ACM Transactions on Internet Technology (TOIT), 2(4):307--339, 2002.
[14]
B. Kemme and G. Alonso. Don't be lazy, be consistent: Postgres-r, a new way to implement database replication. In Proceedings of 26th International Conference on Very Large Data Bases (VLDB'2000), Cairo, Egypt, 2000.
[15]
B. Kemme and G. Alonso. A new approach ro developing and implementing eager database replication protocols. ACM Transactions on Database Systems (TODS), 25(3), September 2000.
[16]
D. Kossmann. The state of the art in distributed query processing. ACM Comput. Surv., 32(4):422--469, 2000.
[17]
L. Lamport. The part-time parliament. ACM Transactions on Computer Systems, 16(2):133--169, 1998.
[18]
Y. Lin, B. Kemme, M. Patino-Martinez, and R. Jimenez-Peris. Middleware based data replication providing snapshot isolation. In International Conference on Management of Data (SIGMOD), Baltimore, Maryland, USA, 2005.
[19]
D. Morse. In-memory database web server. Dedicated Systems Magazine, (4):12--14, 2000.
[20]
Oracle parallel server for windows NT clusters. Online White Paper.
[21]
M. T. Ozsu and P. Valduriez. Principles of Distributed Database Systems. Prentice Hall, 1999.
[22]
M. Patino-Martínez, R. Jiménez-Peris, B. Kemme, and G. Alonso. Scalable replication in database clusters. In Distributed Computing (DISC), 2000.
[23]
M. Patino-Martinez, R. Jimenez-Peris, B. Kemme, and G. Alonso. Consistent database replication at the middleware level. ACM Transactions on Computer-Systems, 23(4):375--423, 2005.
[24]
F. Pedone and S. Frølund. Pronto: A fast failover protocol for off-the-shelf commercial databases. In Proceedings of 19th IEEE Symposium on Reliable Distributed Systems (SRDS'2000), Nürnberg, Germany, 2000.
[25]
F. Pedone, R. Guerraoui, and A. Schiper. Transaction reordering in replicated databases. In Proceedings of the 16th IEEE Symposium on Reliable Distributed Systems, Durham (USA), 1997.
[26]
C. Plattner and G. Alonso. Ganymed: scalable replication for transactional web applications. In Proceedings of the 5th ACM/IFIP/USENIX international conference on Middleware, pages 155--174, 2004.
[27]
L. Rodrigues, H. Miranda, R. Almeida, J. Martins, and P. Vicente. Strong replication in the GLOBDATA middleware. In Workshop on Dependable Middleware-Based Systems, 2002.
[28]
M. Ronström and L. Thalmann. Mysql cluster architecture overview. MySQL Technical White Paper, 2004.
[29]
R. Schenkel, G. Weikum, N. Weissenberg, and X. Wu. Federated transaction management with snapshot isolation. In Selected papers from the Eight International Workshop on Foundations of Models and Languages for Data and Objects, Transactions and Database Dynamics, pages 1--25, 2000.
[30]
R. Schmidt and F. Pedone. Consistent main-memory database federations under deferred disk writes. In Symposium on Reliable Distributed Systems (SRDS'2005), Orlando, USA, 2005.
[31]
T. Shetler. In-memory databases: The catalyst behind real-time trading systems. http://www.timesten.com/library/.
[32]
B. White, J. Lepreau, L. Stoller, R. Ricci, S. Guruprasad, M. Newbold, M. Hibler, C. Barb, and A. Joglekar. An integrated experimental environment for distributed systems and networks. In Proc. of the Fifth Symposium on Operating Systems Design and Implementation, pages 255--270, Boston, MA, 2002. USENIX Association.
[33]
S. Wu and B. Kemme. Postgres-r(si): Combining replica control with concurrency control based on snapshot isolation. In Proceedings of the International Conference of Data Engineering, 2005.
[34]
Informix extended parallel server 8.3. Online White-Paper.
[35]
C. Yu and W. Meng. Principles of Database Query Processing for Advanced Applications. Morgan Kaufmann, San Francisco, 1998.
[36]
Y. Zhou, P. Chen, and K. Li. Fast cluster failover using virtual memory-mapped communication. Technical Report TR-591-99. Princeton University, 1999.

Cited By

View all
  • (2020)Application caching strategy based on in-memory using Redis server to accelerate relational data accessJurnal Teknologi dan Sistem Komputer10.14710/jtsiskom.8.2.2020.157-1638:2(157-163)Online publication date: 30-Apr-2020
  • (2017)Research and implementation of a distributed transaction processing middlewareFuture Generation Computer Systems10.1016/j.future.2016.01.02174(232-240)Online publication date: Sep-2017
  • (2013)Elasticity in Cloud Databases and Their Query ProcessingInternational Journal of Data Warehousing and Mining10.4018/jdwm.20130401019:2(1-20)Online publication date: 1-Apr-2013
  • Show More Cited By

Index Terms

  1. Sprint: a middleware for high-performance transaction processing

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM SIGOPS Operating Systems Review
    ACM SIGOPS Operating Systems Review  Volume 41, Issue 3
    EuroSys'07 Conference Proceedings
    June 2007
    386 pages
    ISSN:0163-5980
    DOI:10.1145/1272998
    Issue’s Table of Contents
    • cover image ACM Conferences
      EuroSys '07: Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems 2007
      March 2007
      431 pages
      ISBN:9781595936363
      DOI:10.1145/1272996
    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 ACM 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: 21 March 2007
    Published in SIGOPS Volume 41, Issue 3

    Check for updates

    Author Tags

    1. middleware
    2. parallel databases
    3. partitioning
    4. replication

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)4
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 12 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2020)Application caching strategy based on in-memory using Redis server to accelerate relational data accessJurnal Teknologi dan Sistem Komputer10.14710/jtsiskom.8.2.2020.157-1638:2(157-163)Online publication date: 30-Apr-2020
    • (2017)Research and implementation of a distributed transaction processing middlewareFuture Generation Computer Systems10.1016/j.future.2016.01.02174(232-240)Online publication date: Sep-2017
    • (2013)Elasticity in Cloud Databases and Their Query ProcessingInternational Journal of Data Warehousing and Mining10.4018/jdwm.20130401019:2(1-20)Online publication date: 1-Apr-2013
    • (2013)Fault tolerant transaction architecturesACM SIGACT News10.1145/2527748.252776844:3(78-84)Online publication date: 16-Sep-2013
    • (2013)MoSQLProceedings of the 28th Annual ACM Symposium on Applied Computing10.1145/2480362.2480452(455-462)Online publication date: 18-Mar-2013
    • (2010)Parallel programming framework for large batch transaction processing on scale-out systemsProceedings of the 3rd Annual Haifa Experimental Systems Conference10.1145/1815695.1815714(1-14)Online publication date: 24-May-2010
    • (2010)Low overhead concurrency control for partitioned main memory databasesProceedings of the 2010 ACM SIGMOD International Conference on Management of data10.1145/1807167.1807233(603-614)Online publication date: 6-Jun-2010
    • (2008)Fault-Tolerant Partial Replication in Large-Scale Database SystemsProceedings of the 14th international Euro-Par conference on Parallel Processing10.1007/978-3-540-85451-7_44(404-413)Online publication date: 26-Aug-2008
    • (2021)FoundationDB: A Distributed Unbundled Transactional Key Value StoreProceedings of the 2021 International Conference on Management of Data10.1145/3448016.3457559(2653-2666)Online publication date: 9-Jun-2021
    • (2018)Replication Based on Group CommunicationEncyclopedia of Database Systems10.1007/978-1-4614-8265-9_312(3177-3183)Online publication date: 7-Dec-2018
    • Show More Cited By

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media