Concurrency Control

OUDB Faculty Sponsor OUDB Members DB Research Links Publications Tools

Previous Page

Concurrency Control (CC) is a mechanism used to synchronize accesses to the database to maintain its consistency. Due to the complexity in OODBMSs, CC is more complicated than in conventional databases, and therefore may severely degrade system performance if not designed carefully.

In this project, we have developed a locking-based scheme to increase concurrency among methods. Our model is based on multi-granularity locking. It utilizes a rich set of lock modes with different locking granularities and the concept of commutativity among methods. Two methods are said to commute if their execution orders do not affect their results and to conflict otherwise. Therefore, if two methods commute, the transactions invoking the methods can run in parallel. For instance access methods, our scheme has several important characteristics. First, it does not put the burden of determining commutativity for methods on application programmers. Second, it provides more concurrency by taking fine locking granularity. Third, it reduces deadlocks due to lock escalation. Finally, it makes use of run-time information in method commutativity construction to improve concurrency. For class definition access methods, it allows them to run concurrently by taking fine locking granularity. Also, it allows more parallelism between class definition access methods and instance access methods. Our comparison study has shown the superiority of our technique over many existing ones.

 

For problems or questions regarding this web contact database@cs.ou.edu.