Abstract

We propose a formal model of concurrency control in object bases. An object base is like a database except that information is represented in terms of “objects” that encapsulate both data and the procedures through which the data can be manipulated. The model generalises the classical model of database concurrency control: it allows for nested transactions (as opposed to flat transactions) which may issue arbitrary operations (as opposed to just read and write operations). We establish an analogue to the classical serialisability theorem and use it to derive simple proofs of correctness of two concurrency control algorithms for object bases, namely nested two-phase locking (Moss' algorithm) and nested timestamp ordering (Reed's algorithm). Concurrency control in object bases can be viewed as a combination of intea-object and inter-object synchronisation. The former ensures that each object's own methods are executed in serialisable fashion; the latter ensures the compatibility of transaction serialisation orders in different objects. This separation allows for the possibility that each object chooses the most suitable concurrency control algorithm for synchronising its own procedures, independently of the algorithms used by other objects, thus enhancing concurrency.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.