This Article 
 Bibliographic References 
 Add to: 
Real-Time Concurrency Control in a Multiprocessor Environment
June 2002 (vol. 13 no. 6)
pp. 659-671

Although many high-performance computer systems are now multiprocessor-based, little work has been done in real-time concurrency control of transaction executions in a multiprocessor environment. Real-time concurrency control protocols designed for uniprocessor or distributed environments may not fit the needs of multiprocessor-based real-time database systems because of a lower concurrency degree of transaction executions and a larger number of priority inversions. This paper proposes the concept of priority cap to bound the maximum number of priority inversions in multiprocessor-based real-time database systems to meet transaction deadlines. We also explore the concept of two-version data to increase the system concurrency level and to explore the abundant computing resources of multiprocessor computer systems. The capability of the proposed methodology is evaluated in a multiprocessor real-time database system under different workloads, database sizes, and processor configurations. It is shown that the benefits of priority cap in reducing the blocking time of urgent transactions is far over the loss in committing less urgent transactions. The idea of two-version data also greatly improves the system performance because of a much higher concurrency degree in the system.

[1] P. Bernstein, V. Hadzilacos, and N. Goodman, Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987.
[2] A. Bestavros and S. Braoudakis, “Timeliness via Speculation for Real-Time Databases,” Proc. IEEE Real-Time Systems Symp., Dec. 1994.
[3] A. Burns, A.J. Wellings, C.M. Bailey, and E. Fyfe, ”A Case Study in Hard Real-Time System Design and Implementation,” Technical Report YCS 190, Dept. of Computer Science, Univ. of York, 1993.
[4] M.P. Bodlaender, S.A.E. Sassen, P.D.V. van der Stok, and J. van der Wal, “The Response Time Distrubution in a Multi-Processor Database with Single Queue Static Locking,” Proc. Fourth Int'l Workshop Parallel and Distributed Real-Time Systems, pp. 118-121, 1996.
[5] L. Chih, “Optimistic Similarity-Based Concurrency Control,” Proc. IEEE 1998 Real-Time Technology and Applications Symp., June 1998.
[6] A. Chiu, B. Kao, and K.-y. Lam, “Comparing Two-Phase Locking and Optimistic Concurrency Control Protocols in Multiprocessor Real-Time Database,” Proc. Int'l Workshop Parallel and Distributed Real-Time Systems, pp. 141-148, 1997.
[7] L.B.C. Dipippo and V.F. Wolfe, “Object-Based Semantic Real-Time Concurrency Control,” Proc. IEEE Real-Time Systems Symp., Dec. 1993.
[8] J. Haritsa, M. Livny, and M. Carey, “On Being Optimistic about Real-Time Constraints,” Proc. Ninth ACM Symp. Principles of Database Systems, 1990.
[9] J. Haritsa, M. Carey, and M. Livny, “Dynamic Real-Time Optimistic Concurrency Control,” Proc. 11th IEEE Real-Time Systems Symp., pp. 94-103, Dec. 1991.
[10] 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.
[11] 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.
[12] C.D. Locke, D.R. Vogel, and T.J. Mesler, “Building a Predictable Avionics Platform in Ada: A Case Study,” Proc. IEEE 12th Real-Time Systems Symp., Dec. 1991.
[13] 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.
[14] 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.
[15] 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.
[16] V.B. Lortz, K.G. Shin, and J. Kim, “MDARTS: A Multiprocessor Database Architecture for Hard Real-Time Systems,” IEEE Trans. Knowledge and Data Eng., vol. 12, no. 4, July/Aug. 2000.
[17] 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.
[18] E. Navathe, Fundamentals of Database Systems, second ed. Addison-Wesley, 1994.
[19] 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.
[20] L. Sha, R. Rajkuma, and J.P. Lehoczky, "Priority Inheritance Protocols: An Approach to Real-Time Synchronization," IEEE Trans. Computers, vol. 39, no. 9, pp. 1,175-1,185, Sept. 1990.
[21] 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.
[22] L. Sha, R. Rajkumar, and J. Lehoczky, “Concurrency Control for Distributed Real-Time Databases,” ACM SIGMOD Record, vol. 17, 1988.
[23] S.H. Son and C.H. Chang, “Performance Evaluation of Real-Time Locking Protocols Using a Distributed Software Prototyping Environment,” Proc. Int'l Conf. Distributed Computing Systems, 1990.
[24] 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.
[25] P. Xuan, S. Sen, O. Gonzalez, J. Fernandez, and K. Ramamritham, “Broadcast on Demand: Efficient and Timely Dissemination of Data in Mobile Environments,” Proc. IEEE Real-Time Technology and Applications Symp., 1997.

Index Terms:
Real-time concurrency control, multiprocessor architecture, two-version database, priority inversion.
Tei-Wei Kuo, Jun Wu, Hsin-Chia Hsih, "Real-Time Concurrency Control in a Multiprocessor Environment," IEEE Transactions on Parallel and Distributed Systems, vol. 13, no. 6, pp. 659-671, June 2002, doi:10.1109/TPDS.2002.1011418
Usage of this product signifies your acceptance of the Terms of Use.