Version consistency and serializability in design databases
A database used by engineering or manufacturing applications for analysis and design purposes is called a design database. Here data items represent the actual physical structure of engineering parts and components. A design process can be thought of as starting with certain base data items or design objects, and deriving others from them. Several alternate designs may be tried from the same set of base objects. Designs with several sets of base objects may also be tried. Hence several versions of various data items may exist in the system simultaneously. Then “consistent” versions must be used in each derivation. Also a concurrency control mechanism for design database systems must allow keeping various versions until the end of the design process.
In this paper we propose a formal definition of version consistency expressed in terms of transaction histories. This allows checking version consistency from a history graph constructed from transaction processing. The version consistency checking algorithm takes polynomial time. We also demonstrate that a notion called τ*-serializability is an appropriate correctness criterion for concurrent executions in design databases. This is distinct from view-serializability which is accepted as the appropriate criterion for databases used for business and administrative transaction processing. We show that τ*-serializability of a version consistent history can be checked in polynomial time. In contrast checking τ*-serializability of a not necessarily version consistent history is NP-complete. It turns out that both version consistency and τ*-serializability can be checked using the same history graph.
Unable to display preview. Download preview PDF.
- [BKK]F. Bancilhan, W. Kim and H.F. Korth, A model of CAD transactions, Proc. VLDB '85, pp. 25–33, 1985.Google Scholar
- [B]J.A. Brzozowski, On models of transactions, Technical Report No.84001, Department of Applied Mathematics and Physics, Kyoto University, Japan, 1984.Google Scholar
- [D]C.N.G. Dampney, Precedency control and other semantic integrity issues in a workbench database, IEEE 1983 Proceedings of Annual Meeting — Database Week, pp. 97–104, 1983.Google Scholar
- [K]U. Kelter, Concurrency control for design objects with versions in CAD databases, Inform. Systems Vol.12, No.2, pp. 137–143, 1987.Google Scholar
- [KSUW]P. Klahold, G. Schlageter, R. Unland and W. Wilkes, A transaction model supporting complex applications in integrated information systems, Proc. SIGMOD '85, pp. 388–401, 1985.Google Scholar
- [NH]T. Neumann and C. Hornung, Consistency and transactions in CAD database, Proc. VLDB '82, pp. 181–188, 1982.Google Scholar
- [P]C.H. Papadimitriou, The serializability of concurrent database updates, J.ACM, Vol.26, No.4, pp. 631–653, 1979.Google Scholar
- [V]K. Vidyasankar, Generalized theory of serializability, Acta Informatica Vol.24, No.1, pp. 105–119, 1987.Google Scholar
- [Y]M. Yannakakis, Serializability by locking, J.ACM Vol.31, No.2, pp. 227–244, 1984.Google Scholar