Pessimistic concurrency control and versioning to support database pointers in real-time databases

In this paper we present a concurrency control algorithm that allows co-existence of soft real-time, relational database transactions, and hard real-time database pointer transactions in real-time database management systems. The algorithm uses traditional pessimistic concurrency-control (i.e. locking) for soft transactions and versioning for hard transactions to allow them to execute regardless of any database lock. We provide formal proof that the algorithm is deadlock free and formally verify that transactions have atomic semantics. We also present an evaluation that demonstrates significant benefits for both soft and hard transactions when our algorithm is used. The proposed algorithm is suited for resource-constrained safety critical, real-time systems that have a mix of hard real-time control applications and soft real-time management, maintenance, or user-interface applications.

[1]  Jörgen Hansson,et al.  Embedded Databases for Embedded Real-Time Systems: A Component-Based Approach1 , 2002 .

[2]  Hector Garcia-Molina,et al.  Scheduling real-time transactions: a performance evaluation , 1988, TODS.

[3]  Tei-Wei Kuo,et al.  A two-version approach for real-time concurrency control and recovery , 1998, Proceedings Third IEEE International High-Assurance Systems Engineering Symposium (Cat. No.98EX231).

[4]  Stephen J. Cannan,et al.  SQL - The Standard Handbook , 1992 .

[5]  Jörgen Hansson,et al.  Data management issues in vehicle control systems: a case study , 2002, Proceedings 14th Euromicro Conference on Real-Time Systems. Euromicro RTS 2002.

[6]  Donald F. Towsley,et al.  Experimental Evaluation of Real-Time Optimistic Concurrency Control Schemes , 1991, VLDB.

[7]  Tei-Wei Kuo,et al.  SSP: A semantics-based protocol for real-time data access , 1993, 1993 Proceedings Real-Time Systems Symposium.

[8]  Jörgen Hansson,et al.  Database Pointers: A Predictable Way of Manipulating Hot Data in Hard Real-Time Systems , 2003, RTCSA.

[9]  S. Sudarshan,et al.  Logical and Physical Versioning in Main Memory Databases , 1997, VLDB.

[10]  Wang Yi,et al.  Uppaal in a nutshell , 1997, International Journal on Software Tools for Technology Transfer.

[11]  Krithi Ramamritham Real-time databases , 2005, Distributed and Parallel Databases.