Stochastic Modeling for Performance Evaluation of Database Replication Protocols
Performance is often the most important non-functional property for database systems and associated replication solutions. This is true at least in industrial contexts. Evaluating performance using real systems, however, is computationally demanding and costly. In many cases, choosing between several competing replication protocols poses a difficulty in ranking these protocols meaningfully: the ranking is determined not so much by the quality of the competing protocols but, instead, by the quality of the available implementations. Addressing this difficulty requires a level of abstraction in which the impact on the comparison of the implementations is reduced, or entirely eliminated. We propose a stochastic model for performance evaluation of database replication protocols, paying particular attention to: (i) empirical validation of a number of assumptions used in the stochastic model, and (ii) empirical validation of model accuracy for a chosen replication protocol. For the empirical validations we used the TPC-C benchmark. Our implementation of the model is based on Stochastic Activity Networks (SAN), extended by bespoke code. The model may reduce the cost of performance evaluation in comparison with empirical measurements, while keeping the accuracy of the assessment to an acceptable level.
KeywordsStochastic modeling Database replication protocols Performance evaluation Diverse redundancy
This work was supported in part by the UK’s Engineering and Physical Sciences Research Council (EPSRC) through the DIDERO-PC project (EP/J022128/1). We would like to thank the anonymous reviewers and Bev Littlewood for useful comments about an earlier version of the paper.
- 1.Sousa, A., et al.: Testing the dependability and performance of group communication based database replication protocols. In: Proceedings of the International Conference on Dependable Systems and Networks (DSN 2005) (2005)Google Scholar
- 6.Graham, C., et al.: The möbius modeling tool. In: Ninth International Workshop on Petri Nets and Performance Models (PNPM 2001), Aachen, Germany (2001)Google Scholar
- 8.Popov, P., Stankovic, V.: Improvements Relating to Database Replication, p. 60. City University London: EU (2013) (EPO, Editor)Google Scholar
- 9.Cecchet, E., Marguerite, J., Zwaenepoel, W.: C-JDBC: Flexible database clustering middleware. In: USENIX Annual Technical Conference, Freenix (2004)Google Scholar
- 11.Vandiver, B., et al.: Tolerating byzantine faults in transaction processing systems using commit barrier scheduling. In: Proceedings of 21st ACM SIGOPS Symposium on Operating Systems Principles, pp. 59–72. ACM: Stevenson, Washington (2007)Google Scholar
- 12.Berenson, H., et al.: A Critique of ANSI SQL Isolation levels. In: SIGMOD International Conference on Management of Data, San Jose, California, United States. ACM Press, New York (1995)Google Scholar
- 13.Stankovic, V.: Performance implications of using diverse redundancy for database replication. In: Centre for Software Reliability, p. 169. City University London, London (2008)Google Scholar
- 15.Osborne, J.W.: Best Practices in Data Cleaning: A Complete Guide to Everything You Need to Do Before and After Collecting Your Data. Sage Publishing, Thousand Oaks (2012)Google Scholar
- 16.Garcia, R., Rodrigues, R., Preguica, N.: Efficient middleware for byzantine fault tolerant database replication. In: Proceedings of the Sixth Conference on Computer systems (EuroSys 2011), pp. 107–122. ACM, Salzburg (2011)Google Scholar
- 17.Vandiver, B.: Detecting and tolerating byzantine faults in database systems. In: Programming Methodology Group, p. 176. Massachusetts Institute of Technology, Boston (2008)Google Scholar