CS6005 Advanced Database System UNIT III A
CS6005 Advanced Database System UNIT III A
RTS
Part 2
Temporal
Databases
Christian S. Jensen
and
Richard T. Snodgrass
Aalborg University
and
University of Arizona
Part Overview
1. Introduction
◆ Applications
◆ Case study
2. Time Ontology
◆ Notions of time
◆ TSQL2 time ontology
◆ Time data types
◆ Clocks
◆ Times and facts
7. Part Summary
◆ Part summary
◆ Stages of research in temporal databases
◆ The future
1. An Introduction to Temporal
Databases
• Applications abound
• Summary
Applications
• Academic
◆ Transcripts record courses taken in
previous and the current semester or term
and grades for previous courses
• Accounting
◆ What bills were sent out and when, what
payments were received and when?
◆ Delinquent accounts, cash flow over time
◆ Money-management software such as
Quicken® can show e.g., account balance
over time.
• Budgets
◆ Previous and projected budgets, multi-
quarter or multi-year budgets
Applications, cont.
• Data Warehousing
◆ Historical trend analysis for decision
support
• Financial
◆ Stock market data
◆ Audit analysis: why were financial
decisions made, and with what
information available?
◆ Program trading
• Geographic Information Systems
(GIS)
◆ Land use over time: boundary of parcels
change over time, as parcels get
partitioned and merged.
◆ Title searches
Applications, cont.
• Insurance
◆ Which policy was in effect at each point
in time, and what time periods did that
policy cover?
• Inventory
◆ Inventory over time, for time-series
analysis, accounting
• Legal records
◆ Validity periods for laws
• Medical records
◆ Patient records, drug regimes, lab tests
◆ Tracking course of disease
◆ Longitudinal studies
Applications, cont.
• Payroll
◆ Past employees, employee salary history,
salaries for future months, records of
with-holding requested by employees
• Planning
◆ Use current and previous schedules for
designing new schedules
◆ Planning for future contingencies
◆ Network management
• Process monitoring
◆ Chemical, nuclear power plant
monitoring
◆ Active databases
Applications, cont.
• Project scheduling
◆ Milestones, task assignments
• Reservation systems
◆ E.g., airlines, hotels, trains
◆ Configuring new routes, ensuring high
utilization
• Scientific databases
◆ Recording experiments
◆ Timestamping satellite images
◆ Dating archeological finds
Applications: Conclusion
A Case Study
Converting to a Temporal
Database
SELECT DateofBirth
FROM Employee
WHERE Name = ’Bob’
Converting to a Temporal
Database
SELECT Salary
FROM Employee
WHERE Name = ’Bob’
AND Start <= CURRENT_TIMESTAMP
AND CURRENT_TIMESTAMP <= Stop
• Alternative 1
◆ Give the user a printout of Salary and
Title information, and have user
determine when his/her salary changed.
• Alternative 2
◆ Use SQL as much as possible.
◆ Find those intervals that overlap or are
adjacent and thus should be merged.
SQL Code
repeat
UPDATE Temp AS T1
SET (T1.Stop) = (SELECT MAX(T2.Stop)
FROM Temp AS T2
WHERE T1.Salary = T2.Salary
AND T1.Start < T2.Start
AND T1.Stop >= T2.Start
AND T1.Stop < T2.Stop)
WHERE EXISTS (SELECT *
FROM Temp AS T2
WHERE T1.Salary = T2.Salary
AND T1.Start < T2.Start
AND T1.Stop >= T2.Start
AND T1.Stop < T2.Stop)
until no tuples updated;
Example
• Initial table
Entirely in SQL
loop:
FETCH emp_cursor INTO :salary,:start,:stop;
if no data returned then go to finished;
find position in linked list to insert this information;
go to loop;
finished:
CLOSE emp_cursor;
Alternatives, cont.
• Original table
• TSQL2:
SELECT Salary
FROM Employee
WHERE Name = ’Bob’
• Employee1:
Name Salary Start Stop
Bob 60000 1993-01-01 1993-06-01
Bob 70000 1993-06-01 1995-01-01
• Employee2:
Name Title Start Stop
Bob Assistant Provost 1993-01-01 1993-10-01
Bob Provost 1993-10-01 1994-02-01
Bob Full Professor 1994-02-01 1995-01-01
• TSQL2:
Summary
• Benefits
◆ Application code is less complex
✱ Easier to understand
✱ Easier to ensure correctness
✱ Easier to maintain
2. Time Ontology
• Notions of Time
◆ Structure
◆ Boundedness
◆ Density
• Clocks
Time Structure
• Linear
now
now
• Branching Time
• Periodic/Cyclic Time
Sunday
Monday
Saturday
Friday Tuesday
Thursday
Wednesday
Boundedness of Time
• Boundedness
◆ Unbounded
◆ Time origin exists (bounded from the left)
◆ Bounded time (bounds on both ends)
• Nature of bound
◆ Unspecified
◆ Specified
Time Density
• Discrete
◆ Time line is isomorphic to the integers.
◆ Timeline composed of a sequence of non-
decomposable time periods of some
fixed, minimal duration, termed
chronons.
◆ Between each pair of chronons is a finite
number of other chronons.
• Dense
◆ Time line is isomorphic to the rational
numbers.
◆ Between any two chronons is an infinite
number of other instants.
• Continuous
◆ Time line is isomorphic to the real
numbers.
◆ Between each pair of instants is a infinite
number of other instants.
Clocks
Clocks, cont.
• Year Clocks
• Day clocks
• Second clocks
• Other clocks
• Discrete representation
◆ A bounded discrete representation of
time is the simplest option.
• Dense representation
◆ A bounded dense representation is also
not difficult to manage, as all rationals
may be expressed as the ratio between
two integers. A floating point
representation may also be employed.
• Continuous representation
◆ A bounded continuous representation is
the most difficult option.
A Snapshot Table
• Can be modified
• Used for static queries
• What is Tom’s rank?
SELECT Rank
FROM Faculty
WHERE Name = ’Tom’
A Transaction-time Table
Transaction
Time
• Append-only: correction to
previous snapshot states is not
permitted
• Supports transaction time
• Supports rollback queries
• What did we believe Tom’s rank
was on October 1, 1984?
SELECT Rank
FROM Faculty
WHERE Name = ’Tom’ AND
TRANSACTION(Faculty) OVERLAPS DATE ’1984-10-01’
A Valid-Time Table
Valid
Time
• May be modified
• Supports valid time
• Supports historical queries
• What was Tom’s rank on October 1,
1984 (as best known)?
SELECT Rank
FROM Faculty
WHERE Name = ’Tom’
AND VALID(Faculty) OVERLAPS DATE ’1984-10-01’
Analogy: A Vita
Tom
Employment
A Bitemporal Table
Transaction
Time
• Append-only
• Supports valid and transaction time
• Supports rollback coupled with
historical queries
• On October 1, 1984, what did we
think Tom’s rank was at that date?
SELECT Rank
FROM Faculty AS F
WHERE Name = ’Tom’
AND VALID(F) OVERLAPS DATE ’1984-10-01’
AND TRANSACTION(F) OVERLAPS DATE ’1984-10-01’
Summary
• Design Space
◆ What is timestamped?
What Is Timestamped?
Valid Time
Transaction Time
• Tuple timestamping
◆ Attributes are atomic values and don’t
have any internal structure
◆ Single Chronon (e.g., Segev)
• Attribute-value Timestamping
◆ Functional, atomic valued (e.g., HRDM)
Name Dept
1 → Eric 1 → Shoe
... ...
12 → Eric 5 → Shoe
6 → Book
...
10 → Book
11 → Shoe
12 → Shoe
Name Dept
[1,11] x [1,∞] Eric [1,7] x [1,∞] Shoe
Summary
• Time Ontology
• Data Model
• Summary
• Structure
◆ TSQL2 uses a linear time structure.
• Boundedness
◆ The TSQL2 time line is bounded on both
ends, from the start of time to a point far
in the future.
• Density
◆ TSQL2 is designed to not differentiate
between the discrete, dense, and
continuous time ontologies. No questions
can be asked that give different answers.
✱ For example, you can’t ask if instant
a precedes instant b. You can only
ask if instant a precedes instant b at
some specified granularity. Different
granularities give different answers.
✱ It is a "don’t ask, don’t tell" time
model.
• TSQL2
◆ PERIOD
✱ Datetime - Datetime
Employee(Emp, Dept)
VT
30
(Kate, Ship)
25
20
15
(Jake, Ship) (Jake, Load)
10
5 10 15 20 25 30
TT
-----Zaniolo--Ceri--Faloutsos--Snodgrass--Subrahmanian--Zicari--All Rights Reserved----
Advanced Database Systems Morgan Kaufmann
Copyright © 1995-7 Christian S. Jensen and Richard T. Snodgrass
Sec: 6.1-6.2 Temporal Databases -8 -
RTS
Emp Dept T
Jake Ship {(5,10),...,(5,15),...,(9,10),...,(9,15),
(10,5),...,(10,20),...,(14,5),...,(14,20),
(15,10),...,(15,15),...,(19,10),...,(19,15)}
Jake Load {(UC,10),...,(UC,15)}
Kate Ship {(UC,25),...,(UC,30)}
Summary
• Schema Specification
• Snapshot Queries
• Snapshot Reducibility
• From Clause (Restructuring)
• Valid-Time Selection
• Valid-Time Projection
• Modification Statements
• Event Tables
• Transaction Time
• Aggregates
• Schema Versioning
• Surrogates
• Temporal Indeterminacy
• Temporal Granularity
• Now
• Vacuuming
Schema Specification
• Kinds of tables
◆ Snapshot table: nothing after the
attributes
◆ Valid-time state table: AS VALID
[ STATE ] <granularity>
◆ Valid-time event table: AS VALID EVENT
<granularity>
◆ Transaction-time table: AS TRANSACTION
◆ Bitemporal state table: AS VALID
[ STATE ] <granularity> AND
TRANSACTION
◆ Bitemporal event table: AS VALID
EVENT <granularity> AND
TRANSACTION
Snapshot Queries
Snapshot Reducibility
From Clause
Restructuring, cont.
is equivalent to
Restructuring, cont.
Restructuring, cont.
SELECT ...
FROM A(B,C,D) AS A2, A2(E,F) AS A3
WHERE ...
is equivalent to
SELECT ...
FROM (SELECT B,C,D FROM A) AS A2,
(SELECT B,C,D,E,F FROM A) AS A3
WHERE ...
AND A2.B = A3.B AND A2.C=A3.C
AND A2.D = A3.D
AND VALID(A2) OVERLAPS VALID(A3)
Restructuring, cont.
Restructuring, cont.
Partitioning
Partitioning, cont.
Valid-Time Selection
Valid-Time Projection
Modification Statements
UPDATE Prescription
SET Dosage TO ’50 mg’
WHERE Name = ’Melanie’
AND Drug = ’Proventil’
UPDATE Prescription
SET Dosage TO ’50 mg’
VALID PERIOD ’[1993-03-01 - 1993-05-30]’
WHERE Name = ’Melanie’
AND Drug = ’Proventil’
30 30
Original now
DELETE
30 30 30
yields
30 30 30 50
UPDATE
yields
50
UPDATE
with valid time
30 50 50 30 50
yields
Event Tables
Transaction Time
SELECT Drug
FROM Prescription AS P
WHERE Name = ’Melanie’
AND TRANSACTION(P) OVERLAPS DATE ’1994-06-01’
• The default is
Aggregates
Aggregates, cont.
SELECT COUNT(*)
FROM Prescription
WHERE Name = ’Melanie’
AND Drug = ’Proventil"
Aggregates, cont.
Aggregates, cont.
Schema Versioning
Surrogates
Surrogates, cont.
UPDATE Patient
SET Name = ’Robert’
WHERE Name = ’Bob’
Temporal Granularity
Temporal Indeterminacy
Now
Vacuuming
Vacuuming, cont.
Summary
• Conventional (non-time-varying)
tables can be derived from time-
varying tables by specifying
SNAPSHOT in the select clause.
Conventional tables can also
participate along with time-varying
tables in a select statement.
Summary, cont.
Summary, cont.
Summary, cont.
Summary, cont.
Summary, cont.
6. Temporal DBMS
Implementation
• Architecture
• A Temporal Algebra
• Operator Implementations
◆ Temporal joins
◆ Coalescing
• Temporal Indexing
Conventional Architecture
Application
Programmers
Application
Programs
Casual Parametric
DBA Staff Users Users
Precompiler
DML Canned
Statements Transactions
DDL
Compiler
Query
Compiler
Query Execution
Plan
Run-time
Evaluator
Transaction
and
Data Manager
DBMS
Data Data
Dictionary Files
• Minimal extension
Query Compiler
• Syntactic analysis
◆ Syntax has been extended.
• Semantic analysis
◆ New data types (period, temporal
element)
◆ Multiple granularities and implicit
CASTs and SCALEs
• Query rewrite optimization
◆ Contend with new predicates (easy)
◆ Snapshot reducible queries have identical
semantics in rewrite phase.
◆ Non-snapshot reducible queries are also
easy to accommodate.
◆ Must be extended to include vacuuming
cut-offs
• Algebraic optimizations
◆ Algebraic operators (both temporal and
conventional) satisfy existing tautologies.
◆ Few changes to (complex) query
optimizer
◆ Cost functions may need to be adjusted
for temporal operators.
Run-time Evaluator
Temporal Algebras
Operator Implementation:
Temporal Join
• Conventional Join
◆ Nested loop
◆ Sort-merge
◆ Hash join
◆ Index Join
• Index Join
◆ Use a temporal index
• Start time
◆ Right-hand tuples with later start times
can overlap left-hand tuples.
• End time
◆ Same problem here
• Adaptive hash
◆ Hash first on join attribute
◆ For those buckets that are too large,
rehash on time
◆ Use sampling to determine appropriate
time hash function
Coalescing
• Similar to a self-join
◆ For each tuple, find the tuples that are
value-equivalent
◆ Thus, every explicit attribute is a join
attribute
Coalescing, cont.
• Sort-merge coalescing
◆ Sort on all attributes, then start time, then
stop time
Temporal Indexing
• Considerations
◆ Supports valid time or transaction time?
✱ For transaction time, supports
WORM devices?
✱ Can index itself be placed on a
WORM device?
◆ Space requirements
◆ Update performance
• Considerations
◆ Query performance for different kinds of
temporal queries
◆ Clustering of data on disk
◆ Handling of long-lived and short-lived
tuples
◆ Robustness under changing data
distributions
SELECT Name
FROM Prescription
WHERE Name BETWEEN ’SA’ AND ’SZ’
AND VALID(Prescription) OVERLAPS PERIOD ’[1994]’
Classification of Temporal
Indexes
Summary
Summary, cont.
• Part Summary
• The Future
Part Summary
1. Introduction to Temporal
Databases
◆ Most applications are temporal.
◆ SQL does not provide adequate support
for such applications.
◆ Temporal query languages do provide
such support.
2. Time Ontology
◆ Different notions of time exist.
◆ Time data types
◆ Associating times with facts
5. TSQL2
◆ Covered a wide range of language
constructs
Stages
The Future
Books
Snodgrass, R.T., editor, The TSQL2 Temporal Query Language, Kluwer Academic Publishers, 1995, 674+xxiv
pages.
Tansel, A., Cliord, J., Gadia, S., Jajodia, S., Segev, A., and Snodgrass, R.T. (eds.). Temporal Databases: The-
ory, Design, and Implementation. Database Systems and Applications Series. Benjamin/Cummings, Redwood
City, CA, 1994.
Surveys
Chomicki, J., \Temporal query languages: A survey," in Ohlbach, H. J. Gabbay, D. M., editor, Proceedings of the
First International Conference on Temporal Logic. Lecture Notes in Articial Intelligence 827, Springer-Verlag,
pp. 506{534, July 1994.
G. O zsoyoglu, and R.T. Snodgrass, \Temporal and Real-Time Databases: A Survey," IEEE Transactions on
Knowledge and Data Engineering, Vol. 7, No. 4, August, 1995, 48 pages.
Snodgrass, R.T., \Temporal Databases," Theories and Methods of Spatio-Temporal Reasoning in Geographic
Space, A. U. Frank, I. Campari, and U. Formentini (eds.), Springer-Verlag Lecture Notes in Computer Science
1
639, pp. 22{64, September 1992.
Snodgrass, R.T., \Temporal Object-Oriented Databases: A Critical Comparison," chapter 19 in Modern Database
Systems: The Object Model, Interoperability and Beyond, W. Kim, editor, Addison-Wesley/ACM Press, 1995,
pp. 386{408.
Selected Articles
Ahn, I., and Snodgrass, R.T., \Performance Evaluation of a Temporal Database Management System," in C. Zan-
iolo, editor, Proceedings of the ACM International Conference on Management of Data, pp. 96{107, May 1986.
Ahn, I., and Snodgrass, R.T., \Partitioned Storage for Temporal Databases," Information Systems 13, 4, pp. 369{
391, 1988.
Ahn, I., and Snodgrass, R.T., \Performance Analysis of Temporal Queries," Information Sciences 49, pp. 103{
146, 1989.
Ait-Braham, A., Theodoulidis, B., and Karvelis, G., \Conceptual Modelling and Manipulation of Temporal
Databases," in Proceedings of the Entity-Relationship Conference, 1994.
Andany, J., Leonard, M., and Palisser, C., \Management of schema evolution in databases," in Proceedings of the
Conference on Very Large Databases, Barcelona, Spain, pp. 161{170, September 1991.
Ariav, G., \A temporally oriented data model," ACM Transactions on Database Systems 11, 4, pp. 499{527,
December, 1986.
Barbic, F., and Pernici, B., \Time modeling in oce information systems," In S. Navathe, editor, Proceedings of
the ACM International Conference on Management of Data, Austin, TX, pp. 51{62, May 1985.
Bassiouni, M.A., and Llewellyn, M.J., \A Relational-Calculus Query Language for Historical Databases," Journal
of Computer Languages 17, 3, pp. 185{197, 1992.
Becker, B., Gschwind, S., Ohler, T., Seeger, B., and Widmayer, P., \On Optimal Multiversion Access Structures,"
in Proceedings of the Symposium on Large Spatial Databases, Singapore, pp. 123{141, 1993.
Beech, D., and Mahbod, B., \Generalized version control in an object-oriented database," in Proceedings of the
International Conference on Very Large Databases, pp. 14-22, February 1988.
Ben-Zvi, J., The Time Relational Model. Ph.D. thesis, Computer Science Department, UCLA, 1982.
Bhargava, G., and Gadia, S.K., \Relational database systems with zero information loss," IEEE Transactions on
Knowledge and Data Engineering 5, 7, pp. 76{87, February 1993.
Bohlen, M., and Marti, R., \Handling Temporal Knowledge in a Deductive Database System," Datenbanksysteme
in Buro, Technik und Wisenschaft, Springer-Verlag, 1993.
Cardenas, A., Ieong, I., Taira, R., Barker, R., and Breant, C., \The Knowledge-Based Object-Oriented PIC-
QUERY+ Language," IEEE Transactions on Knowledge and Data Engineering 5, 4, pp. 644{657, August 1993.
Caruso, M., and Sciore, E., \Meta-functions and contexts in an object-oriented database language," In Proceed-
ings of the ACM International Conference on Management of Data, Chicago, IL, pp. 56{65, June 1988.
2
Chakravarthy, S. and Kim, S.-K., \Resolution of Time Concepts in Temporal Databases," Information Sciences
80, 1{2, pp. 91{125, September 1994.
Chomicki, J., and Imelinski, T., \Relational specications of innite query answers," in Proceedings of the ACM
International Conference on Management of Data, pp. 174{183, May 1989.
Chou, H.T., and Kim, W., \A unifying framework for version control in a CAD environment," in Proceedings of
the International Conference on Very Large Databases, pp. 336{344, 1986.
Chu, W. W., Ieong, I. T., Taira, R. K., Breant, C. M., \A Temporal Evolutionary Object-Oriented Data Model
and Its Query Language for Medical Image Management," in Proceedings of the Very Large Database Conference,
August 1992.
Cliord, J., and Croker, A., \The Historical Relational Data Model (HRDM) and Algebra Based on Lifespans,"
in Proceedings of the International Conference on Data Engineering, pp. 528{537, Los Angeles, CA, February 1987.
Cliord, J., Croker, A., and Tuzhilin, A., \On completeness of historical relational query languages," ACM Trans-
actions on Database Systems 19, 1, pp. 64{116, March 1994.
Cliord, J., and Tansel, A.U., \On an algebra for historical relational databases: Two views," in S. Navathe,
editor, Proceedings of the ACM International Conference on Management of Data, pp. 247{265, Austin, TX,
May 1985.
Cliord, J., and Warren, D.S., \Formal semantics for time in databases," ACM Transactions on Database Systems
8, 2, pp. 214{254, June 1983.
Dadam, P., Lum, V., and Werner, H.-D., \Integration of time versions into a relational database system," in
U. Dayal, G. Schlageter and L.H. Seng, editors, Proceedings of the Conference on Very Large Databases, pp. 509{
522, Singapore, August 1984.
Date, C.J., \A proposal for adding date and time support to SQL," ACM SIGMOD Record 17, 2, pp. 53{76, June
1988.
Dayal, U., and Smith, J.M., PROBE: A Knowledge-Oriented Database Management System. Springer-Verlag,
1986.
Dayal, U., and Wuu, G.T.J., \A uniform approach to processing temporal queries," in Proceedings of the Confer-
ence on Very Large Databases, Vancouver, Canada, August 1992.
DeAntonellis, V., Degli, A., Mauri, G., and Zonta, B., \Extending the entity-relationship approach to take into
account historical aspects of systems," in P. Chen, editor, Proceedings of the International Conference on the E-R
Approach to Systems Analysis and Design. North Holland, 1979.
Dreyer, W., Dittrich, A.K., Schmidt, D., \An Object-Oriented Data Model for a Time Series Management Sys-
tem," in Proceedings of the International Working Conference on Scientic and Statistical Database Management,
J.C. French and H. Hinterberger, editors, Charlottesville, VA, pp. 185{95, September, 1994.
Dutta, S., \Generalized events in temporal databases," in Proceedings of the International Conference on Data
Engineering, pp. 118{126, Los Angeles, CA, February 1989.
Dyreson, C.E., and Snodgrass, R.T., \Valid-time Indeterminacy," in Proceedings of the International Conference
on Data Engineering, pp. 335{343, Vienna, Austria, April 1993.
3
Elmasri, R., and Wuu, G.T.J., \A temporal model and query language for ER databases," in Proceedings of the
International Conference on Data Engineering, pp. 76{83, February 1990.
Elmasri, R., Wuu, G.T.J.,, and Kim, Y., \The Time Index - An Access Structure for Temporal Data," in Pro-
ceedings of the Conference on Very Large Databases, Brisbane, Australia, August 1990.
Elmasri, R., Kim, Y.-J.,, and Wuu, G.T.J., \Ecient implementation techniques for the time index," In Proceed-
ings of the International Conference on Data Engineering, pp. 102{111, 1991.
Elmasri, R., Jaseemuddin, M., and Kouramajian, V., \Partitioning of time index for optical disks," in F. Golshani,
editor, Proceedings of the International Conference on Data Engineering, pp. 574{583, Phoenix, AZ, February
1992.
Emerson, E.A., \Temporal and Modal Logic," in J. van Leeuwen, editor, Handbook of Theoretical Computer
Science, pp. 997{1067, Elsevier Science Publishers, B.V., 1990.
Faloutsos, C., Ranganathan, M., and Manolopoulos, Y., \Fast Subsequence Matching in Time-Series Databases,"
in Proceedings of the ACM SIGMOD International Conference on Management of Data, R.T. Snodgrass and
M. Winslett, editors, pp. 419{429, Minneapolis, MN, May, 1994.
Frank, A.U., \Qualitative Temporal Reasoning is GIS-Ordered Time Scales," Technical Report, Dept. for Geo-
Information, Technische Universitat Wien, 1994.
Gadia, S.K., \Toward a multihomogeneous model for a temporal database," in Proceedings of the International
Conference on Data Engineering, pp. 390{397, Los Angeles, CA, February 1986.
Gadia, S.K., \A homogeneous relational model and query languages for temporal databases," ACM Transactions
on Database Systems 13, 4, pp. 418{448, December 1988.
Gadia, S.K., Nair, S., and Poon, Y.-C., \Incomplete information in relational temporal databases," in Proceedings
of the Conference on Very Large Databases, Vancouver, Canada, August 1992.
Gadia, S.K., and Yeung, C.S., \A generalized model for a relational temporal database," in Proceedings of the
ACM International Conference on Management of Data, pp. 251{259, Chicago, IL, June 1988.
Goralwalla, I., and Ozsu, M.T., \Temporal Extensions to a Uniform Behavioral Object Model," in Proceedings
of the International Conference on Entity-Relationship Approach, Dallas, TX, June 1993.
Gunadhi, H., and Segev, A., \A Framework for Query Optimization in Temporal Databases", in Proceedings of the
International Conference on Statistical and Scientic Database Management Systems, volume 420, pp. 131{147,
Springer Verlag, April 1990.
Gunadhi, H., and Segev, A., \Query processing algorithms for temporal intersection joins," in Proceedings of the
International Conference on Data Engineering, Kobe, Japan, 1991.
Gunadhi, H., and Segev, A., \Ecient indexing methods for temporal relations," IEEE Transactions on Knowl-
edge and Data Engineering 5, 3, pp. 496{509, June 1993.
Hammer, M., and McLeod, D., \Database Description with SDM: A Semantic Database Model," ACM Transac-
tions on Database Systems 6, 3, pp. 351{386, September 1981.
Hawking, S., A Brief History of Time. Bantam Books, New York, 1988.
4
Hsu, S., and Snodgrass, R.T., \Optimal Block Size for Set-valued Attributes," Information Processing Letters 45,
3, pp. 153{158, March 1993.
Jensen, C.S., Mark, L., and Roussopoulos, N., \Incremental implementation model for relational databases with
transaction time," IEEE Transactions on Knowledge and Data Engineering 3, 4, pp. 461{473, December 1991.
Jensen, C.S., and Mark, L., \Queries on change in an extended relational model," IEEE Transactions on Knowl-
edge and Data Engineering 4, 2 April 1992, pp. 192{200.
Jensen, C.S., Mark, L., Roussopoulos, N., and Sellis, T., \Using dierential techniques to eciently support
transaction time," The VLDB Journal 2, 1, pp. 75{111, January 1993.
Jensen, C.S., Cliord, J., Elmasri, R., Gadia, S.K., Hayes, P., and Jajodia, S. (eds.), \A consensus glossary of
temporal database concepts," Technical Report R 93-2035, Department of Mathematics and Computer Science,
Institute for Electronic Systems, Denmark, November 1993.
Jensen, C.S., and Snodgrass, R.T., \Temporal Specialization and Generalization," IEEE Transactions on Knowl-
edge and Data Engineering 6, 6, pp. 954{974, December 1994.
Jensen, C. S., Soo, M. D., and Snodgrass, R.T., \Unifying Temporal Models via a Conceptual Model," Informa-
tion Systems 19, 7, pp. 513{547, December 1994.
Jones, S., Mason, P, and Stamper, R., \Legol 2.0: A relational specication language for complex rules," Infor-
mation Systems 4, 4, pp. 293{305, November 1979.
Kafer, W., \History and Version Management of Complex Objects (in German)" , Ph.D. thesis, Fachbereich
Informatik, University Kaiserslautern, 1992.
Kafer, W., and Schoning, H., \Mapping a Version Model to a Complex-Object Data Model" , in Proceedings of
International Conference on Data Engineering, pp. 348{357, 1992.
Kafer, W., and Schoning, H., \Realizing a Temporal Complex-Object Data Model", in Proceedings of the ACM
International Conference on Management of Data, pp. 266{275, 1992.
Kahn, K., and Gorry, G.A., \Mechanizing temporal knowledge," Articial Intelligence, pp. 87{108, 1977.
Kim, W., and Chou, H.T., \Versions of Schema in OODB," in Proceedings of the International Conference on
Very Large Databases, pp. 148{159, Long Beach, CA, 1988.
Kim, W., Garza, J.F., Ballou, N., and Woelk, D., \Architecture of the Orion next-generation database system,"
IEEE Transactions on Knowledge and Data Engineering 2, 1, pp. 109{124, March 1990.
Kim, S.-K. and Chakravarthy, S., \Temporal Databases with Two-Dimensional Time: Modeling and Implemen-
tation of Multihistory," Information Sciences 80, 1{2, pp. 43{89, September 1994.
Kimball, K.A., \The DATA System," Master's thesis, University of Pennsylvania, 1978.
Klopprogge, M.R., \TERM: An Approach to Include the Time Dimension in the Entity-Relationship Model," in
Proceedings of the International Conference on the Entity Relationship Approach, pp. 477{512, Washington, DC,
October 1981.
Kolovson, C., and Stonebraker, M., \Indexing techniques for historical databases," in Proceedings of the Interna-
tional Conference on Data Engineering, pp. 127{137, Los Angeles, CA, February 1989.
5
Kolovson, C., and Stonebraker, M., \Segment Indexes: Dynamic Indexing Techniques for Multi-Dimensional In-
terval Data," In J. Cliord and R. King, editors, Proceedings of ACM SIGMOD Conference on Management of
Data, pp. 138{147, June 1991.
Koubarakis, M., \Representation and querying in temporal databases: the power of temporal constraints," in
Proceedings of the International Conference on Data Engineering, pp. 327{334, Vienna, Austria, April 1993.
Ladkin, P., The Logic of Time Representation. Ph.D. thesis, University of California, Berkeley, November 1987.
Lanka, S., and E. Mays, \Fully Persistent B+ Trees," in Proceedings of the ACM SIGMOD International Con-
ference on Management of Data, pp. 426{435, 1991.
Landau, G.M., Schmidt, J.P., and Tsotras, V.J., \On Historical Queries for Multiple Lines of Evolution," VLDB
Journal, to appear, 1995.
Lee, R.M., Coelho, H., and Cotta, J.C., \Temporal inferencing on administrative databases," Information Sys-
tems 10, 2, pp. 197{206, 1985.
Leung T.Y., and Muntz, R., \Query processing for temporal databases," in Proceedings of the International Con-
ference on Data Engineering, Los Angeles, California, February 1990.
Leung, T.Y., and Muntz, R., \Generalized data stream indexing and temporal query processing," in Proceedings
of the Second International Workshop on Research Issues in Data Engineering: Transaction and Query Process-
ing, February 1992.
Lomet, D., and Salzberg, B., \Access methods for multiversion data," in Proceedings of the ACM International
Conference on Management of Data, pp. 315{324, June 1989.
Lomet, D., and Salzberg, B., \The performance of a multiversion access method," in Proceedings of the ACM
International Conference on Management of Data, pp. 353{363, Atlantic City, May 1990.
Lomet, D., \Grow and post index trees: Role, techniques and future potential," in Proc. of the Second Symposium
on Large Spatial Databases, 1991.
Lorentzos, N.A., and Johnson, R.G., \Extending relational algebra to manipulate temporal data," Information
Systems 13, 3, pp. 289{296, 1988.
Lu, H., Ooi, B.-C., and Tan, K.-L., \On Spatially Partitioned Temporal Join," in Proceedings of the International
Conference on Very Large Databases, Santiago, Chile, pp. 546{557, September 1994.
Lum, V., Dadam, P., Erbe, R., Guenauer, J., Pistor, P., Walch, G., Werner, H., and Woodll, J., \Designing
DBMS Support for the Temporal Dimension," in B. Yormark, editor, Proceedings of the ACM International Con-
ference on Management of Data, pp. 115{130, Boston, MA, June 1984.
Lyngbk, P., \OSQL: A Language for Object Databases," Technical Report HPL-DTD-91-4, Hewlett-Packard
Laboratories, Palo Alto, CA, January 1991.
Manolopoulos, Y, and Kapetanakis, G., \Overlapping B+ Trees for Temporal Data," in Proceedings of the JCIT
Conference, Jerusalen, Israel, pp. 491{498, October 1990.
McKenzie, E., and Snodgrass, R.T., \Schema Evolution and the Relational Algebra," Information Systems 15,
2, pp. 207{232, June 1990.
6
McKenzie, E., and Snodgrass, R., \An Evaluation of Relational Algebras Incorporating the Time Dimension in
Databases," ACM Computing Surveys 23, 4, pp. 501{543, December 1991.
McKenzie, E., and Snodgrass, R.T., \Supporting Valid Time in an Historical Relational Algebra: Proofs and
Extensions," Technical Report TR-91-15, Department of Computer Science, University of Arizona, Tucson, AZ,
August 1991.
Mylopoulos, J., Borgida, A., Jarke, M., and Koubarakis, M., \Telos: Representing Knowledge about Information
Systems," ACM Transactions on Oce Information Systems 8, 4, pp. 325{362, October 1990.
Navathe, S.B. and Ahmed, R., \A temporal relational model and a query language," Information Sciences 49,
pp. 147{175, 1989.
Overmyer, R., and Stonebraker, M., \Implementation of a time expert in a database system," ACM SIGMOD
Record 12, 3, pp. 51{59, April 1982.
O zsu, M.T., Peters, R., Szafron, D., Irani, B., Lipka, A., and Mu~noz, \TIGUKAT: A Uniform Behavioral Ob-
jectbase Management System," VLDB Journal, (1995) (to appear).
Ploue, W., Kim, W., Lorie, R., and McNabb, D., \Versions in an engineering database system," IBM Research
Report RJ4085, San Jose, CA, October 1983.
Rescher, N.C., and Urquhart, A., Temporal Logic, Springer-Verlag, 1971.
Rose, E., and Segev, A., \TOODM | A Temporal Object-oriented Data Model with Temporal Constraints," In
Proceedings of the International Conference on the Entity Relationship Approach, October 1991.
Rose, E., and Segev, A., \TOOA: A Temporal Object-oriented Algebra," In Proceedings of the European Confer-
ence on Object-Oriented Programming, July 1993.
Rose, E., and Segev, A., \TOOSQL { a temporal object-oriented query language," In Proceedings of the Interna-
tional Conference on the Entity-Relationship Approach, Dallas, TX, 1993.
Sadeghi, R., A Database Query Language for Operations on Historical Data. Ph.D. thesis, Dundee College of
Technology, Dundee, Scotland, December 1987.
Sadeghi, R., Samson, W.B., and Deen, S.M., \HQL | A Historical Query Language," Technical report, Dundee
College of Technology, Dundee, Scotland, September 1987.
Slazberg, B., and V.J. Tsotras, \A Comparison of Access Methods for Time Evolving Data," Technical Report
CATT-TR-94-81, Polytechnic University, 1994.
Sarda, N., \Algebra and query language for a historical data model," The Computer Journal 33, 1, pp. 11{18,
February 1990.
Sarda, N., \Extensions to SQL for historical databases," IEEE Transactions on Knowledge and Data Engineering
2, 2, pp. 220{230, June 1990.
Sciore, E., \Using annotations to support multiple kinds of versioning in an object-oriented database system,"
ACM Transactions on Database Systems 16, 3, pp. 417{438, September 1991.
7
Sciore, E., \Versioning and conguration management in an object-oriented data model," VLDB Journal (to
appear), 1994.
Segev, A., Himawan, G., Chandra, R., and Shanthikumar, J., \Selectivity estimation of temporal data manipu-
lations," Information Sciences 74, 1-2, October 1993.
Segev, A., and Shoshani, A., \Logical modeling of temporal data," In U. Dayal and I. Traiger, editors, Proceedings
of the ACM SIGMOD International Conference on Management of Data, pp. 454{466, San Francisco, CA, May
1987.
Segev, A., and Chandra, R., \A Data Model for Time-Series Analysis," Advanced Database Systems, N.R. Adam
and B.K. Bhargava, editors, Springer-Verlag, 1993, pp. 191{212.
Seshadri, P., Livny, M., and Ramakrishnan, R., \Sequence Query Processing," in Proceedings of the ACM SIG-
MOD International Conference on Management of Data, R.T. Snodgrass and M. Winslett, editors, pp. 430{441,
Minneapolis, MN, May, 1994.
Shahar, Y., Tu, S.W., Musen, M.A., \Knowledge Acquisition for Temporal-Abstraction Mechanisms," Knowedge
Acquisition 4, 2, pp. 217-236, June 1992.
Shahar, Y., Musen, M.A., \RESUME: A Temporal-Abstraction System for Patient Monitoring," Computers and
Biomedical Research 26, 3, pp. 255{273, June 1993.
Snodgrass, R.T., and Ahn, I., \Temporal Databases," IEEE Computer 19, 9, pp. 35{42, September 1986.
Snodgrass, R.T., \The Temporal Query Language TQuel," ACM Transactions on Database Systems 12, 2,
pp. 247{298, June 1987.
Snodgrass, R.T., Ahn, I., Ariav, G., Batory, D.S., Cliord, J., Dyreson, C.E., Elmasri, R., Grandi, F., Jensen,
C.S., Kafer, W., Kline, N., Kulkanri, K., Leung, C.Y.T., Lorentzos, N., Roddick, J.F., Segev, A., Soo, M.D., and
Sripada, S.M., \TSQL2 Language Specication," ACM SIGMOD Record 23, 1, pp. 65{86, March 1994.
Soo, M.D., Snodgrass, R.T., and Jensen, C.S., \Ecient Evaluation of the Valid-time Natural Join," in Proceed-
ings of the International Conference on Data Engineering, pp. 282{292, February 1994.
Sripada, S., \A logical framework for temporal deductive databases," In Proceedings of the International Confer-
ence on Very Large Databases, pp. 171{182, Los Angeles, CA, 1988.
Stonebraker, M., Rowe, L., and Hirohama, M., \The Implementation of Postgres," IEEE Transactions on Knowl-
edge and Data Engineering 2, 1, pp. 125{142, March 1990.
Su, S.Y.W., and Chen, H.M., \A Temporal Knowledge Representation Model OSAM*/T and Its Query Language
OQL/T," In Proceedings of the International Conference on Very Large Databases, 1991.
Tansel, A.U., \Adding time dimension to relational model and extending relational algebra," Information Systems
11, 4, pp. 343{355, 1986.
Tansel, A.U., Arkun, M.E., and Ozsoyo glu, G., \Time-By-Example Query Language for Historical Databases,"
IEEE Transactions on Software Engineering 15 4, pp. 464{478, April 1989.
Tansel, A.U., \A Historical Query Language," Information Sciences 53, pp. 101{133, 1991.
8
Thompson, P.A., A Temporal Data Model Based on Accounting Principles. Ph.D. thesis, Department of Com-
puter Science, University of Calgary, Calgary, Alberta, Canada, March 1991.
Tsotras, V., Gopinath, B., and Hart, G., \Ecient Management of Time-Evolving Databases," IEEE Transac-
tions on Knowledge and Data Engineering (to appear), 1995.
Tsotras, V., and Kangelaris, N., \The Snapshot Index, an I/O-Optimal Access Method for Timeslice Queries,"
Information Systems (to appear), 1995.
Urban, S.D., and Delcambre, L.M.L., \An analysis of the structural, dynamic, and temporal aspects of semantic
data models," in Proceedings of the International Conference on Data Engineering, volume IEEE Computer Soci-
ety Order Number 655, pp. 382{389, Los Angeles, CA, February 1986. IEEE Computer Society, IEEE Computer
Society Press.
Van Benthem, J.F.K.A., The Logic of Time: A Model-Theoretic Investigation into the Varieties of Temporal
Ontology and Temporal Discourse. Reidel, Hingham, MA, 1982.
Wang, X., Jajodia, S., and Subrahamanian, V., \Temporal Modules: An Approach Toward Temporal Databases,"
in Proceedings of the ACM SIGMOD International Conference on Management of Data, R.T. Snodgrass and
M. Winslett, editors, Minneapolis, MN, pp. 227{236, May 1994.
Wiederhold, G., Fries, J.F., and Weyl, S., \Structured organization of clinical data bases," in Proceedings of the
National Computing Conference, pp. 479{485, 1975.
Wiederhold, G., Jajodia, S., and Litwin, W., \Dealing with granularity of time in temporal databases," in Proc.
3rd Nordic Conference on Advanced Information Systems Engineering, Trondheim, Norway, May 1991.
Wilkinson, K., Lyngbk, P., and Hasan, W., \The IRIS Architecture and Implementation," IEEE Transactions
on Knowledge and Data Engineering 2, 1, pp. 63{75, March 1990.
Worboys, M.F., \Reasoning about GIS using temporal and dynamic logics," in Temporal GIS Workshop. Uni-
versity of Maine, October 1990.
Wuu, G.T.J., \SERQL: An ER Query Language Supporting Temporal Data Retrieval," in Proceedings of the 10th
International Phoenix Conference on Computers and Communications, pp. 272{279, March 1991.
Wuu, G.T.J., and Dayal, U., \A uniform model for temporal object-oriented databases," In Proceedings of the
International Conference on Data Engineering, pp. 584{593, Tempe, Arizona, February 1992.
Yau, C., and Chat, G. S. W., \TempSQL { A Language Interface to a Temporal Relational Model," Information
Sc. & Tech., pp. 44{60, October, 1991.