This Article 
 Bibliographic References 
 Add to: 
Two-Version Based Concurrency Control and Recovery in Real-Time Client/Server Databases
April 2003 (vol. 52 no. 4)
pp. 506-524

Abstract—While there has been a significant amount of research in real-time concurrency control, little work has been done in logging and recovery for real-time databases. This paper proposes a two-version approach which considers both real-time concurrency control and recovery. We propose a network-server-based architecture and algorithms which can not only reduce the blocking time of higher-priority transactions and improve the response time of client-side read-only transactions, but also provide a diskless runtime logging mechanism and an efficient and predictable recovery procedure. The performance of the algorithms was verified by a series of simulation experiments by comparing the algorithms with the well-known Priority Ceiling Protocol (PCP), the Read/Write PCP, the New PCP, and the 2-version two-phase locking protocol, for which we have very encouraging results. The schedulability of higher-priority transactions and the response time of client-side read-only transactions were all greatly improved.

[1] R. Bayer, H. Heller, and A. Reiser, “Parallelism and Recovery in Database Systems,” ACM Trans. Database Systems, vol. 5, no. 2, pp. 139-156, June 1980.
[2] P. Bernstein, V. Hadzilacos, and N. Goodman, Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987.
[3] A. Bestavros and S. Braoudakis, “Timeliness via Speculation for Real-Time Databases,” Proc. IEEE Real-Time Systems Symp., Dec. 1994.
[4] L. Chih, “Optimistic Similarity-Based Concurrency Control,” Proc. IEEE 1998 Real-Time Technology and Applications Symp., June 1998.
[5] L.B.C. Dipippo and V.F. Wolfe, “Object-Based Semantic Real-Time Concurrency Control,” Proc. IEEE Real-Time Systems Symp., Dec. 1993.
[6] K. Elhardt and R. Bayer,“A database cache for high performance and fast restart in database systems,” ACM Trans. Database Systems, vol. 9, no. 4, pp.503-525, Dec. 1984.
[7] R.B. Hagmann, "A Crash Recovery Scheme for a Memory-Resident Database System," IEEE Trans. Computers, vol. 35, no. 9, pp. 839-343, Sept. 1986.
[8] J. Huang and L. Gruenwald, “An Update-Frequency-Valid-Interval Partition Checkpoint Technique for Real-Time Main Memory Databases,” Proc. First Int'l Workshop Real-Time Databases: Issues and Applications, pp. 135-143, 1996.
[9] T. Haerder and A. Reuter,“Principles of transaction-oriented database recovery,” ACM Computing Surveys, vol. 15, no. 4, pp. 287-317, Dec. 1983.
[10] “Intel Value Series 100 Flash Memory Card,” prodbref29768602.htm, 1998.
[11] R. Gupta, J. Haritsa, and K. Ramamritham, “More Optimism about Real-Time Distributed Commit Processing,” Proc. IEEE 19th Real-Time Systems Symp., Dec. 1997.
[12] “IBM Ultrastar 2XP 2XP 3.5-Inch 4.5 and 9.1 GB High-Performance Disk Drives,” , 1996.
[13] M.U. Kamath and K. Ramamritham, “Performance Characteristics of Epsilon Serializability with Hierarchical Inconsistency Bounds,” Proc. Int'l Conf. Data Eng., pp. 587-594, Apr. 1993.
[14] T.-W. Kuo and A.K. Mok, “SSP: A Semantics-Based Protocol for Real-Time Data Access,” Proc. IEEE 14th Real-Time Systems Symp., Dec. 1993.
[15] T.-W. Kuo, Y.-T. Kao, and L.C. Shu, “A Two-Version Approach for Real-Time Concurrency Control and Recovery,” Proc. Third IEEE Int'l High Assurance Systems Eng. Symp., Nov. 1998.
[16] E. Kayan and O. Ulusoy, “Real-Time Transaction Management in Mobile Computing Systems,” Proc. Sixth Int'l Conf. Database Systems for Advanced Applications, Apr. 1999.
[17] V.C.S. Lee, K.-W. Lam, and W. Tsang, “Transaction Processing in Wireless Distributed Real-Time Databases,” Proc. 10th Euromicro Workshop Real-Time Systems, June 1998.
[18] K-W. Lam and S.L. Hung, “A Preemptive Transaction Scheduling Protocol for Controlling Priority Inversion,” Proc. Third Int'l Workshop Real-Time Computing Systems and Applications, Oct. 1996.
[19] V. Lee, K. Lam, and T.-W. Kuo, “Group Consistency for Real-Only Transactions in Mobile Environments,” Proc. Ninth Int'l Workshop Parallel and Distributed Real-Time Systems, Apr. 2001.
[20] K.-W. Lam, V.C.S. Lee, and S.L. Hung, “Scheduling Real-Time Read-Only Transactions,” Proc. Fourth Int'l Workshop Real-Time Computing Systems and Applications, Oct. 1997.
[21] K.-W. Lam, S.H. Son, V.C.S. Lee, and S.L. Hung, “Using Separate Algorithms to Process Read-Only Transactions in Real-Time Systems,” Proc. IEEE 19th Real-Time Systems Symp., Dec. 1998.
[22] Y. Lin and S.H. Son, “Concurrency Control in Real-Time Databases by Dynamic Adjustment of Serialization Order,” Proc. IEEE 11th Real-Time Systems Symp., Dec. 1990.
[23] C.L. Liu and J.W. Layland, “Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment,” J. ACM, vol. 20, no. 1, pp. 40-61, 1973.
[24] C. Mohan, D. Haderle, B. Lindsay, H. Pirahesh, and P. Schwarz, ARIES: A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-Ahead Logging ACM Trans. Database Systems, vol. 17, no. 1, pp. 94-162, Mar. 1992.
[25] R. Elmasri and S.B. Navathe, Fundamentals of Database Systems, second ed., Benjamin/Cummings, 1994.
[26] “NEC 16M-BIT Rambus DRAM,” , 1997.
[27] C. Pu and A. Leff, “Epsilon-Serializability,” Technical Report CUCS-054-90, Dept. of Computer Science, Columbia Univ., Jan. 1991.
[28] K. Ramamrithan and C. Pu, "A Formal Characterization of Epsilon-Serializability," IEEE Trans. Knowledge and Data Eng., vol. 7, no. 6, pp. 997-1,007, Dec. 1995.
[29] L. Sha, R. Rajkumar, and J.P. Lehoczky, “Priority Inheritance Protocols: An Approach to Real-Time Synchronization,” Technical Report CMU-CS-87-181, Dept. of Computer Science, Carnegie-Mellon Univ., Nov. 1987, IEEE Trans. Computers, vol. 39, no. 9, Sept. 1990.
[30] C.-S. Peng and K.-J. Lin, “A Semantic-Based Concurrency Control Protocol for Real-Time Transactions,” Proc. IEEE 1996 Real-Time Technology and Applications Symp., 1996.
[31] R.M. Sivasankaran, K. Ramaritham, and J.A. Stankovic, “Logging and Recovery Algorithms for Real-Time Databases,” technical report, Univ. of Massachusetts, 1997.
[32] L. Sha, R. Rajkumar, and J. Lehoczky, “Concurrency Control for Distributed Real-Time Databases,” ACM SIGMOD Record, vol. 17, 1988.
[33] L. Sha, R. Rajkumar, S.H. Son, and C.H. Chang, “A Real-Time Locking Protocol,” IEEE Trans. Computers, vol. 40, no. 7, July 1991.
[34] M. Wu and W. Zwaenepoel, “eNVY: A NonVolatile Main Memory Storage System,” Proc. IEEE Fourth Workshop Workstation Operating Systems, pp. 116-118, Oct. 1993.
[35] M. Xiong, R.M. Sivasankaran, J. Stankovic, K. Ramamritham, and D. Towsley, “Scheduling Transactions with Temporal Constraints: Exploiting Data Semantics,” Proc. IEEE 17th Real-Time Systems Symp., pp. 240-251, Dec. 1996.

Index Terms:
Real-time database, concurrency control, recovery, read-only transactions, client/server databases, logging, write through procedure.
Tei-Wei Kuo, Yuan-Ting Kao, Chin-Fu Kuo, "Two-Version Based Concurrency Control and Recovery in Real-Time Client/Server Databases," IEEE Transactions on Computers, vol. 52, no. 4, pp. 506-524, April 2003, doi:10.1109/TC.2003.1190591
Usage of this product signifies your acceptance of the Terms of Use.