Exploiting Semantics and Speculation for Improving the Performance of Read-only Transactions

A read-only transaction (ROT) does not modify any data. Efforts are being made in the literature to improve the performance of ROTs without correctness and data currency issues. The widely used twophase locking protocol (2PL) processes the transactions without any correctness and data currency issues. However, the performance of 2PL deteriorates with data contention. Snapshot isolation (SI)-based protocols proposed in the literature improve the performance of ROTs, but they compromise on correctness and data currency issues. Speculative locking (SL) protocols are proposed in the literature for improving the performance of ROTs by carrying out speculative executions only for ROTs and following 2PL for update transactions. In SL-based protocols, update transactions are blocked if they conflicting with ROTs. In this paper, we have proposed an improved approach to improve parallelism among update transactions and ROTs by exploiting a new notion called “compensatability”. In this protocol, an ROT which can be “compensatable” can complete the execution and carry out compensating operation to incorporate the effect of conflicting update transactions. As a result, the parallelism is improved over SL protocols as the update transactions which are conflicting with ‘compensatable’ ROTs need not block. In this paper, we have proposed a protocol by exploiting both “compensatability” property of ROTs and speculation. The simulation results show that the proposed protocol improves the performance by carrying out less number of speculative executions. Further, the proposed protocol does not violate serializability criteria.

[1]  Masaru Kitsuregawa,et al.  Speculative locking protocols to improve performance for distributed database systems , 2004, IEEE Transactions on Knowledge and Data Engineering.

[2]  William E. Weihl,et al.  SPECIFICATION AND IMPLEMENTATION OF ATOMIC DATA TYPES , 1984 .

[3]  Jonathan Goldstein,et al.  Relaxed currency and consistency: how to say "good enough" in SQL , 2004, SIGMOD '04.

[4]  Miron Livny,et al.  Concurrency control performance modeling: alternatives and implications , 1987, TODS.

[5]  S. Sudarshan,et al.  Automating the Detection of Snapshot Isolation Anomalies , 2007, VLDB.

[6]  Hector Garcia-Molina,et al.  Read-only transactions in a distributed database , 1982, TODS.

[7]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[8]  Victor C. S. Lee,et al.  Using separate algorithms to process read-only transactions in real-time systems , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[9]  Dennis Shasha,et al.  Making snapshot isolation serializable , 2005, TODS.

[10]  P. Krishna Reddy,et al.  Speculation-based protocols for improving the performance of read-only transactions , 2010, Int. J. Comput. Sci. Eng..

[11]  Catriel Beeri,et al.  A Concurrency Control Theory for Nested Transactions. , 1983, PODC 1983.

[12]  Hamid Pirahesh,et al.  Efficient and flexible methods for transient versioning of records to avoid locking by read-only transactions , 1992, SIGMOD '92.

[13]  Alan Fekete,et al.  The Efficacy of Commutativity-Based Semantic Locking in a Real-World Application , 2008, IEEE Transactions on Knowledge and Data Engineering.

[14]  Divyakant Agrawal,et al.  Efficient Execution of Read-Only Transactions in Replicated Multiversion Databases , 1993, IEEE Trans. Knowl. Data Eng..

[15]  B. R. Badrinath,et al.  Semantics-based concurrency control: Beyond commutativity , 1987, 1987 IEEE Third International Conference on Data Engineering.

[16]  Jim Gray,et al.  The Transaction Concept: Virtues and Limitations (Invited Paper) , 1981, VLDB.

[17]  Jim Gray,et al.  A critique of ANSI SQL isolation levels , 1995, SIGMOD '95.

[18]  P. Krishna Reddy,et al.  Improving the performance of read-only transactions through asynchronous speculation , 2008, SpringSim '08.

[19]  Tei-Wei Kuo,et al.  Evaluation of concurrency control strategies for mixed soft real-time database systems , 2002, Inf. Syst..

[20]  William E. Weihl,et al.  Commutativity-based concurrency control for abstract data types , 1988, [1988] Proceedings of the Twenty-First Annual Hawaii International Conference on System Sciences. Volume II: Software track.

[21]  Jim Gray,et al.  The Transaction Concept: Virtues and Limitations (Invited Paper) , 1981, VLDB.

[22]  Irving L. Traiger,et al.  The notions of consistency and predicate locks in a database system , 1976, CACM.

[23]  Hector Garcia-Molina,et al.  Using semantic knowledge for transaction processing in a distributed database , 1983, TODS.

[24]  Dimitri Theodoratos,et al.  Data Currency Quality Factors in Data Warehouse Design , 1999, DMDW.

[25]  Divyakant Agrawal,et al.  Semantic Locking in Object-Oriented Database Systems , 1994, OOPSLA.

[26]  P. Krishna Reddy,et al.  Improving the Performance of Read-Only Transactions Through Speculation , 2007, DNIS.

[28]  Sang-Won Lee,et al.  Design of flash-based DBMS: an in-page logging approach , 2007, SIGMOD '07.

[29]  Michael Stonebraker,et al.  Semantics based transaction management techniques for replicated data , 1988, SIGMOD '88.

[30]  Gerhard Weikum,et al.  Semantic concurrency control in object-oriented database systems , 1993, Proceedings of IEEE 9th International Conference on Data Engineering.