Implementing Temporal Databases in
Object-Oriented Systems ?
A. Steiner and M. C. Norrie
Institute for Information Systems
ETH Zurich, CH-8092 Zurich, Switzerland.
We present a temporal object data model, query language and system that support temporal database applications. We then show how equivalent temporal constructs and operations could be provided in existing object-oriented database management systems (OODBMS) and describe how we did this in the O2 system. A comparison of the two resulting systems highlights the current limitations to the notions of extensibility supported in existing OODBMS.
There is an on-going debate as to whether it is necessary to extend data models with specific temporal constructs and operations to support temporal databases, or, it is sufficient to model temporal properties using date/time attributes (e. g. [Sno95a]). In the case of object-oriented database systems (OODBMS), the latter case is argued more strongly given the inherent extensibility of these systems.
We believe that it is important to study both approaches to determine their relative merits and appreciate how far one can go in supporting the development of temporal databases without making changes to the underlying data model and system. Actually, this second point is important, not only for temporal databases, but also for other special forms of database such as spatial databases and domain specific databases such as those for engineering or medical applications.
Further, even though, as we show in this paper, there are potential gains in both convenience and optimisation by incorporating temporal constructs and operations into the model and system, it is still necessary to consider how best to support such applications in current OODBMS.
In this paper, we report on investigations of both approaches to implementing temporal data-bases in object-oriented systems. First, we present a system based on an object-oriented data model, OM, which we extended with temporal constructs and operations. The extended temporal model, TOM, is orthogonal in that it allows valid times to be associated with objects, collections of objects and constraints over these collections such as disjointness. The OM model has an associated algebra over collections of objects and this was extended with temporal equivalents. A prototype system for the extended model, TOM, has been implemented in Prolog and we give examples to show how applications can be modelled and temporal queries expressed in the system. As we will describe, this model can be considered as a generalization of many proposed temporal object-oriented data models and therefore its implementation is typical of our first approach.
?Proc. 5th Int. Conf. on Database Systems for Advanced Applications (DASFAA'97), Melbourne, Australia, April 1-4, 1997.