This Article 
 Bibliographic References 
 Add to: 
Performance Analysis of Long-Lived Transaction Processing Systems with Rollbacks and Aborts
October 1996 (vol. 8 no. 5)
pp. 802-815

Abstract—Increasing the parallelism in transaction processing and maintaining data consistency appear to be two conflicting goals in designing Distributed Database Systems (DDBS). This problem becomes especially difficult if the DDBS is serving long-lived transactions (LLTs). Recently, a special case of LLTs, called sagas, has been introduced that addresses this problem. The DDBS with sagas provides high parallelism to transactions by allowing sagas to release their locks as early as possible. However, it is also subject to overhead due to efforts needed to restore data consistency in case of failures. In this paper, we first conduct a series of simulation studies to compare the performance of LLT systems with saga implementation (or saga systems) and the LLT systems without saga implementation (or nonsaga systems) in a faulty environment. The simulation studies show that the saga systems outperform their nonsaga counterparts under most of conditions including the heavy failure cases. We thus propose an analytical queuing model to further investigate the performance behavior of the saga systems. The motivation of the development of this analytical model is twofold. It assists us to further study quantitatively the performance penalty of the saga implementation due to the failure recovery overhead. Furthermore, the analytical solution can be used by system administrators to fine tune the performance of the saga system. This analytical model captures the primary aspects of the saga system, namely, data locking, resource contention, and failure recovery. Due to the complicated nature of the analytical modeling, we solve the model approximately for various performance metrics using decomposition methods, and validate the accuracy of the analytical results via simulations.

[1] P. Bernstein, V. Hadzilacos, and N. Goodman, Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987.
[2] C. Date, An Introduction to Database Systems.Reading, Mass.: Addison-Wesley, 1987.
[3] C. Pu, G.E. Kaiser, and N. Hutchinson, "Split-Transaction for Open-Ended Activities," Proc. 14th VLCB Conf., pp. 26-37, May 1988.
[4] K. Salem, H. Garcia-Molina, and R. Alunb, "Altruistic Locking: A Strategy for Coping with Long-Live Transactions," Proc. Second Int'l Workshop High Performance Transactions Systems, Sept. 1987.
[5] H. Garcia-Molina and K. Salem, "Sagas," Proc. ACM SIGMOD Ann. Conf., pp. 249-259, May 1987.
[6] B. Galler and L. Bos, "A Model of Transaction Blocking in Databases," Performance Evaluation, vol. 3, pp. 95-122, Mar. 1983.
[7] D. Mitra and P.J. Weinberger, "Probabilistic Models of Database Locking: Solutions, Computational Algorithms, and Asymptotics," J. ACM, vol. 31, pp. 855-878, Oct. 1984.
[8] D. Potier and P. Leblanc, "Analysis of Locking Policies in Database Management System," Comm. ACM, vol. 23, pp. 584-593, Oct. 1980.
[9] Y. Tay, R. Suri, and N. Goodman, "A Mean Value Performance Model for Locking in Databases: The No-Waiting Case," J. ACM, vol. 32, pp. 618-651, July 1985.
[10] A. Thomasian and I. Ryu, "A Decomposition Solution to the Queueing Network Model of the Centralized dbms with Static Locking," Proc. ACM SIGMETRICS, pp. 82-92, 1983.
[11] D. Menasce and T. Nakanishi, "Optimistic versus Pessimistic Concurrency Control Mechanisms in Database Management Systems," Information Systems, vol. 7, pp. 13-27, Jan. 1982.
[12] R. Morris and W. Wong, "Performance Analysis of Locking and Optimistic Concurrency Control Algorithms," Performance Evaluation, vol. 5, pp. 105-118, May 1985.
[13] K.M. Chandy, U. Herzog, and L. Woo, "Parametric Analysis of Queueing Networks," IBM J. Research and Development, vol. 19, pp. 36-42, Jan. 1975.
[14] P.J. Courtois, Decomposability, Queueing and System Application. Academic Press, 1977.
[15] D. Potier, Introduction to QNAP2: User Guide.INRIA, France, 1984.
[16] J. Riordan, An Introduction to Combinatorial Analysis.New York: John Wiley and Sons, 1958.
[17] L. Kleinrock, Queueing Systems: Volume 1; Theory. Wiley-Interscience, 1975.
[18] F.B. Hilderbrand, Methods of Applied Mathematics.Englewood Cliffs, N.J.: Prentice Hall, 1952.
[19] D.R. Liang, "An Asymptotic Analysis of a Long-Lived Transaction Processing System with Failures," Technical Report IIS-TR-0211, Inst. of Information Science, Academia Sinica, Jan. 1995.
[20] D. Cox, "A Use of Complex Probabilities in Theory of Stochastic Processes," Proc. Cambridge Phil. Soc., vol. 51, pp. 313-319, 1955.
[21] D.R. Liang and S. Tripathi, "A Decomposition Approach to a Model of a Transaction Processing System," Technical Report CS-TR 2829, Dept. of Computer Science, Univ. of Maryland, Jan. 1992.
[22] P. Heidelberger and K.S. Trivedi, "Analytic Queueing Models for Programs with Internal Concurrency," IEEE Trans. Computers, vol. 32, no. 1, pp. 73-82, Jan. 1983.
[23] W. Chu and K.K. Leung, "Module Replication for Real-Time Distributed Processing Systems," IEEE Trans. Parallel and Distributed Systems, vol. 79, pp. 961-975, June 1991.
[24] F. Baskett, K.M. Chandy, R.R. Muntz, and R. Palacios, “Open, Closed and Mixed Networks of Queues with Different Classes of Customers,” J. ACM, vol. 22, no. 2, pp. 248-260, 1975.

Index Terms:
Performance evaluation, queuing theory, transaction processing systems, long-lived transactions, fault tolerance, failure recovery.
Deron Liang, Satish K. Tripathi, "Performance Analysis of Long-Lived Transaction Processing Systems with Rollbacks and Aborts," IEEE Transactions on Knowledge and Data Engineering, vol. 8, no. 5, pp. 802-815, Oct. 1996, doi:10.1109/69.542031
Usage of this product signifies your acceptance of the Terms of Use.