An Algebraic Language for Query and Update of Temporal Databases
AIR FORCE INST OF TECH WRIGHT-PATTERSONAFB OH
Pagination or Media Count:
Although time is a property of events and objects in the real world, conventional relational database management systems RDBMs cant model the evolution of either the objects being modeled of the database itself. Relational databases can be viewed as snapshot databases in that they record only the current database state, which represents the state of the enterprise being modeled at some particular time. We extend the relational algebra to support two orthogonal aspects of time valid time, which concerns the modeling of time- varying reality, and transaction time, which concerns the recording of information in databases. In so doing, we define an algebraic language for query and update of temporal databases. The relational algebra is first extended to support valid time. Historical versions of nine relational operators i.e., union, difference, cartesian product, selection, projection, intersection, O- join, natural join, and quotient are defined and three new operators i.e., historical derivation, non-unique aggregation, and unique aggregation are introduced. Both the relational algebra and this new historical algebra are then encapsulated within a language of commands to support transaction time. The languages semantics is formalized using denotational semantics. Rollback operators are added to the algebras to allow relations to be rolled back in time. The language accommmodates scheme and contents evolution, handles single- command and multiple-command transactions, and supports queries and valid time. The language is shown to have the expressive power of the temporal query language TQuel.
- Computer Programming and Software