Issue No. 03 - March (2008 vol. 20)
While the dominant approach to persistent storage in practice is to use a relational DBMS, there are some specialist applications that rely on object stores. The performance of these applications depends on the efficiency of the object store's concurrency control mechanism. Today's predominant concurrency control mechanism is strict two-phase object locking. In the 80s, an interesting alternative was developed: commutativity-based semantic locking. In theory, it can outperform traditional locking schemes in certain scenarios with appropriate commutativity potential. In this paper, we study the real-world performance of different locking strategies in a particular industrial application from the telecommunications sector. We compare object-based locking and commutativity-based semantic locking. We found that, in this application, semantic locking performs equally to, but no better than, object locking in reasonable mixes of real-world transactions, and that it only outperforms in a deliberately contrived mix.
Concurrency Control, Object-oriented Databases, Transaction Processing, Persistent Object Systems
P. Wu, U. Röhm and A. Fekete, "The Efficacy of Commutativity-Based Semantic Locking in a Real-World Application," in IEEE Transactions on Knowledge & Data Engineering, vol. 20, no. , pp. 427-431, 2007.