Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Evaluation of Relational Algebras Incorporating the TimeDimension in Databases
1...EDWIN McKENZIE, JR.
AFCAC/SY Bldg 1320F Hanscom AFB, Massachusetts 01731
RICHARD T. SNODGRASS
Department of Computer Science, University of Arizona, Tucson, Arizona 85721
The relational algebra is a procedural query language for relational databases. In this
paper we survey extensions of the relational algebra that can query databases recordingtime-varying data. Such an algebra is a critical part of a temporal DBMS. We identify26 criteria that provide an objective basis for evaluating temporal algebras, Seven ofthe criteria are shown to be mutually unsatisfiable, implying there can be no perfect
temporal algebra, Choices made as to which of the incompatible criteria are satisfied
characterize existing algebras Twelve time-oriented algebras are summarized andthen evaluated against the criteria. We demonstrate that the design space has in somesense been explored in that all combinations of basic design decisions have at least onerepresentative algebra. Coverage of the remaining criteria provides one measure of the
quality of each algebra We argue that all of the criteria are independent and that thecriteria identified as compatible are indeed so, Finally, we list plausible propertiesproposed by others that are either subsumed by other criteria, are not well defined, orhave no objective basis for being evaluated. The algebras realize many different
approaches to what appears initially to be a straightforward design task.
Categories and Subject Descriptors: H,2, 1 [Database Management]: LogicalDesign—data models, normal forms, schema and subschema; H.2.3 [DatabaseManagement]: Languages–data manipulation languages (D&IL); H.2.4 [DatabaseManagement]: Systems—query processing, transaetzon processing; H.4 1 [InformationSystems Applications]: Office Automation
General Terms: Languages, Performance
Additional Key Words and Phrases: Aggregate, chronon, historical relation,homogeneity, query optimization, snapshot relation, transaction time, valid time
INTRODUCTION time. The ability to model this temporal
dimension of the real world is essential
Time is an important aspect of all real- to many computer system applications,
world phenomena. Events occur at such as econometrics, banking, inventory
specific points in time; objects and the control, accounting, law, medical records,
relationships among objects exist over cartographic data, and airline reserva-
Permission to copy without fee all or part of this material M granted provided that the copies are not madeor distributed for direct commercial advantage, the ACM copyright notice and the title of the publicationand its data appear, and notice is given that copying is by permission of the Association for ComputingMachinery To copy otherwise, or to republish, requires a fee and/or specific permission.@ 1991 ACM 0360-0300/91/1200-501 $01.50
ACM Computmg Surveys. Vol 2,3,No. 4, December 1991
502
tions
. L. E. McKenzie and R. Snodgrass
CONTENTS
INTRODUCTION1 TEMPORAL ALGEBRAS
1 1 Aspects of Temporal Modehng1 20vervlew of Algebras1 3 Summary
2 CRITERIA2 1 Adopted Criteria22 Properties Not Included2,3 Incompatibilities
3 EVALUATION31 Confecting Criteria32 Compatible Crltena33 Crlterla Metaproperties
4 SUMMARYACKNOWLEDGMENTSREFERENCES
Yet the relational data model [Codd
1970, 1990] does not support the ‘time-varying aspect of real-world phenomena.Conventional databases can be viewedas snapshot databases in that they rep-
resent the state of an enterprise at oneparticular time, generally now. As adatabase changes, out-of-date informa-tion, representing past states of theenterprise, is discarded. Although tech-niques for encoding time-varying infor-mation in conventional databases havebeen developed in many applicationareas, these techniques are neverthelessad hoc and application specific.
The need for application-independentdatabase management system (DBMS)support for time-varying information isreceiving increasing attention, primarilyfor two reasons. First, as the researchand business communities became com-fortable with relational database theoryand practice, a plethora of new appli-cations for databases emerged, amongthem temporal applications. Second, theadvent of optical storage technology pro-vided an answer to the question of whereto store all the historical data. In the lastdecade alone, more than 320 articlesrelating time to information processinghave been published [McKenzie 1986; Soo1991; Stare and Snodgrass 1988].
One area of continuing research inter-est is the development of a temporal datamodel capable of representing the tempo-
ral dimension of real-world phenomena.
Such a model would store, along with
information on entities and relation-
ship, both when that information was
va~d’ in the real world being modeledand when that information was recordedin the database. The primary focus has
been extending the relational data model
to support time-varying information. In-
eluded in that effort is the extension of
the relational algebra.
An algebra is a set of objects and a
collection of owerations over those ob -
jects. In the r~lational algebra, the ob-
jects are relations, and the operationstake as ar~uments one or two relationsand produce a relation. An example isthe selection operator that yields a rela-
tion whose components, supplied by the
underlying relations, satisfy a specifiedpredicate.
The relational algebra was originallydefined as an operational equivalent of acalculus-based declarative relationalquery language such as SQL. The DBMStranslates SQL queries into an algebraicexpression, which is then optimized andexecuted. Implementation issues, such asquery optimization and physical storagestrategies, can best be addressed in termsof the algebra. In fact, one of the reasonsfor the success of the relational model isthat it lends itself to an algebraic execu-tion paradigm [Elmasri and Navathe1989; Vandenberg and DeWitt 1991].
Example
Let R be a relation specifying the courses
each student is taking (see Figure 1). A
simple query on this relation, “what
courses are offered,” is expressed in SQL
as follows:
SELECT courseFROM R
This may be translated into the algebraicprojection operation, rCOu,,,( R). The
ACM Computing Surveys, Vol. 23, No 4, December 1991
Evaluation of Temporal Algebras o 503
R= sname course
‘$Phil>! “English”
“Norman” “English”
“Norman” kMa~h79
Figure 1. Snapshot relation example.
wtours e
“English”
“Math”
Figure 2. Result of a snapshot query.
resulting relation is shown in Figure 2.In Figure 3 we record time-varying in-
formation by augmenting each row withthe starting and stopping semesters. For
this and all later examples, assume thatthe granularity of time is a semester rel-ative to the fall semester 1980. Hence, 1represents the fall semester 1980, 2 rep-resents the spring semester 1981, and soon. Note that two tuples are needed to
record Phil’s enrollment in English, as
his enrollment was not continuous. We
can now query “when was each coursetaken,” with the result shown in Figure4. If Norman had not taken English dur-ing semesters 1 and 2, the result relationwould contain two tuples with a course of
English, as in Figure 3. D
Such a query on a time-varying rela-tion cannot be translated into the re-
lational algebra. Time-oriented aspects,such as the fact that consecutive but oth-
erwise identical intervals should be coa-
lesced into a single interval, as in the
example for “English,” are not provided
for in the relational algebra. The alter-
native, not coalescing consecutive inter-
vals, is undesirable because it allows
multiple, equivalent representations for
each temporal relation, which is not
faithful to the conventional relational
model and can complicate the semantics
of the operations or require inefficient
implementations. Hence, even this very
simple query raises difficulties with the
relational algebra. Also, new operations,
such as the ability to apply a temporal
predicate, such as ouerlap, or to compute
a time-varying aggregate, such as count,are required. What is needed is a tempo-
ral algebra that incorporates these
aspects and operations. An extended al-
gebra can serve as an appropriate target
for a temporal query language transla-
tor, an appropriate structure on which to
perform optimization, and an appropriate
executable formalism for the DBMS to
interpret to execute queries. A temporal
algebra is thus a critical part of a
DBMS if it is to support time-varying
information.
Desirable characteristics for a tempo-
ral algebra derive from the uses just
listed and include being a consistent ex-
tension of the relational algebra, sup-
porting time as an additional dimension,
supporting existing optimization strat-
egies, and having the expressive pow-
er of a temporal calculus-based query
language. These and many other
characteristics will be explored below.
In this paper we examine algebras that
are extensions of the conventional rela-
tional algebra and that support manipu-
lation of the temporal dimension of
real-world phenomena. In the next sec-
tion, we first review the conventional re-
lational algebra, then briefly describe the
temporal algebras that have been pro-
posed, emphasizing the types of objects
that each defines and the operations on
objects that each provides. Some alge-
bras use as objects snapshot relations
with additional time-stamp attributes,
with the time notion appearing primarily
in new algebraic operators and/or new
semantics of the existing operators. Other
algebras are defined on objects that less
closely resemble conventional relations.
To evaluate these algebras, we identify
26 criteria, each of which is well defined,
has an objective basis, and is arguably
beneficial. We separate these criteria
into 7 conflicting and 19 compatiblecriteria. We show that no algebra can
simultaneously satisfy all conflicting
.4CM Computing Surveys, Vol 23, No 4, December 1991
504 “ L. E. McKenzie and R. Snodgrass
R= sname course start stop
“p~i~>> “English” 1 1.’P]Ii]>> “English” 3 4
“Norman” “English” 1 2
“Norman” “Math” 5 6
Figure 3. Relation with time example,
-
Figure 4. Result of a temporal query
criteria. EIence, there can be no perfect
algebra, which is perhaps why so many
temporal algebras have been defined. We
argue that all algebras should be ex-
pected to satisfy the compatible criteria.
The conflicting criteria give rise to four
major “approaches,” each identifying the
(generally implicit) mindset of the alge-
bra’s designer(s) as to which of the con-
flicting criteria are most important to
satisfy. We show that this design space
has in some sense been explored, in that
each approach has at least 1 (in actual-
ity, at least 2) representative algebras.
We also touch on 10 plausible properties
that have been previously proposed that
we do not include as criteria because they
have no objective basis for being evalu-
ated or are subsumed by other criteria.
Hence, we provide a comprehensive
means of evaluating a temporal algebra:
First, determine to which approach it ad-
heres, and, second, determine which com-
patible criteria it satisfies. We evaluate
12 algebras using this strategy.
In the next section we first examine
the kinds of time the algebras support
and the conceptual model of time em-
ployed. We summarize the temporal
algebras, considering the objects each
defines and the operations on those ob-
jects that each provides. We then explain
the criteria and show how seven are mu-
tually incompatible. We evaluate the al-
gebras on the conflicting and compatible
criteria. Finally, we argue informally and
empirically that the criteria are indepen-
dent; specifically, that they are not pair-
wise logically equivalent and that the
criteria termed compatible are not pair-
wise incompatible.
Those interested in databases in gen-
eral will find Sections 1.1 (aspects of
temporal modeling), 1.3 (summary of
temporal algebras), and 4 (summary) and
Table 3 and Figure 13 most relevant.
Those interested in temporal databases,
whether concerning modeling and logical
design, query optimization, or implemen-
tation should read Sections 2 (criteria)
and 3 (evaluation). Those interested in a
specific temporal algebra should at least
peruse Section 2.1 and should read Sec-
tions 3.1 (conflicting criteria) and 3.2
(compatible criteria). We recommend that
those designing a new temporal algebra
study the entire paper carefully to under-
stand the many subtle issues at play.
There are three contributions of this
paper, in addition to the survey itself:
providing an objective basis for evaluat-
ing a temporal algebra, demonstrating
that an algebra that satisfies all desir-
able criteria cannot be defined, and
showing that the major areas of the de-
sign space (termed “approaches” above)have all been explored.
1. TEMPORAL ALGEBRAS
In Codd’s [1970] relational algebra, the
only type of object is the relation. As-
sume that we are given a set .z =
{Al,. ... A~}, where each A,, 1 s i s n,is called an attribute name, or simply an
attribute. Also assume that there is an
ACM Computing Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras o 505
arbitrary, nonempty, finite, or denumer -
able set, 9,, 1 s i s n, called a domaincorresponding to each attribute A, [Maier
19831. Then a relation on these n do-
mains is a set of n-tuples, where each
tuple is itself a set of ordered pairs ( A,,D,), DL E 9,, 1 s i s n [Date 19861.
Hence, each element of a tuple maps an
attribute name onto a value in its associ-
ated domain. The set of attributes Ji for
a relation is called the relation schema.Because relations are sets, tuples with
duplicate attribute values are not per-
mitted. If the domains are sets of atomic
values, then a relation is said to be in
first normal form. Relations are most of-
ten displayed as tables in which the rows
correspond to tuples and the columns
correspond to attributes.
Example
Assume we are given the relation schema
Student = {sname, course) and corre-
sponding domains of student names and
college courses. Then R is a relation
on the schema Student, as shown in
Figure 1. 0
There are five basic operations in the
relational algebra: union, set difference,Cartesian product, selection, and projec-tion [Unman 1988]. The union of two
relations is the relation containing tu-
ples that are in either of the two input
relations. The set difference of two rela-
tions is the relation containing tuples
that are in the first input relation but
not in the second. Union and difference
require argument relations over the same
schema. The Cartesian product ( x ) of a
relation of n-tuples and a relation of m-tuples is the relation containing (n + m)-tuples that have n elements from a tuple
in the first input relation and m ele-
ments from a tuple in the second input
relation. We assume, without loss of gen-
eralit y, that the relation schemas of the
input relations are disjoint [Maier 1983].
The last two are unary operations. Selec-tion (0) maps an input relation to an
output relation containing only those tu-
ples in the input relation that satisfy a
specified predicate. Hence, selection re -
duces a relation “horizontally” by re-
moving tuples. Projection (m) maps each
tuple in its input relation to a tuple in its
output relation having only a specified
subset of the attributes of the input tu-
ple. Hence, projection reduces a relation
“vertically” by removing attributes.
Other operations (e. g., intersection, di-
vide, join) can be defined in terms of
these five basic operations,
1.1 Aspects of Temporal Modeling
Before discussing specific temporal ex-
tensions to the relational algebra, we
must consider two aspects of time that
apply to all such extensions. The first
aspect concerns the kinds of time the
algebras concern. There are three or-
thogonal kinds of time that a data model
may support: valid time, transaction
time, and user-defined time [Snodgrass
and Ahn 1985, 1986], Valid time con-
cerns modeling a time-varying reality.
The valid time of, say, an event is the
clock time at which the event occurred in
the real world, independent of the record-
ing of that event in some database. Other
terms found in the literature that have a
similar meaning include intrinsic time
[Bubenko 19771, effective time [Ben-Zvi
19821, and logical time [Dadam et al.
1984; Lum et al. 19841. Transaction time,on the other hand, concerns the storage
of information in the database. The
transaction time of an event (perhaps
represented as an integer) identifies
the transaction that stored the informa-
tion about the event in the database.
Other terms found in the literature that
have a similar meaning are extrinsic time
[Bubenko 197’7], registration time [Ben-
Zvi 19821, and physical time [Dadam et
al. 1984; Lum et al. 1984]. User-definedtime is an uninterpreted domain for
which the data model supports the opera-
tions of input, output, and perhaps
comparison. As its name implies, the se-
mantics of user-defined time is provided
by the user or application program.
Valid time, unlike transaction time, is
a multifaceted aspect of time. Different
times may be used in defining the
ACM Computing Surveys, Vol. 23, No 4, December 1991
506 ● L. E. McKenzie and R. Snodgrass
existence of a single object or relation-
ship; for example, the time a student
completes all degree requirements and
the time of the student’s graduation cere-
mony may both be used in specifying the
student’s graduation from college. Also,
the various properties of an entity or
relationship need not change at the same
time; for example, an employee’s promo-
tion may, but need not, be accompanied
by a change in salary or office address.
The relational algebra already sup-
ports user-defined time because it is sim-
ply another domain, such as integer
or character string [Overmyer and
Stonebraker 19821. The relational alge-
bra, however, supports neither valid time
nor transaction time. PJo record of the
evolution of either the relation or the
enterprise that it models is maintained.
Only one version, the current version, of
the relation exists, and its contents rep-
resent the state of the enterprise being
modeled at a single time. The application
programmer can, however, encode time-
varying information in a conventional
database by using attributes with the
domain of user-defined time, but the
DBMS does not interpret such attributes
differently from attributes of other do-
mains, as illustrated with the SQL query
given previously. Hence, we refer to the
relational algebra hereafter as the snap-shot algebra, since it captures only asingle snapshot in time of both a relation
and the enterprise that the relation
models.
An algebra, data model, or relation
supporting only valid time is termed his-torical; one that supports only transac-
tion time is termed rollback; and one
that supports both valid and transaction
time is termed tarnporal [Snodgrass and
Ahn 1986]. Most of the algebras and their
underlying data models surveyed here
are historical. Transaction time was in-
troduced later than valid time and is
easier to support in an algebra. Most of
the hard problems are encountered
in supporting valid time, so that is the
aspect addressed in most algebras.
Figure 5 illustrates a single temporal
relation composed of a sequence of histor-
ical states indexed by transaction time.
It is the result of four transactions start-
ing from a null relation: (1) three tuples
were added, (2) one tuple was added, (3)
one tuple was added and an existing one
terminated, and (4) the starting time of a
previous tuple [the middle one added in
transaction (l)] was changed to a some-
what later time (presumably the original
starting time was incorrect) and a re
cently added tuple (the bottom one) was
deleted (presumably it should not have
been there in the first place.) Each up-
date operation involves copying the his-
torical state, then applying the update to
the newly created state. Of course, less
redundant representations than the one
shown are possible.
Example
Assume there exists a temporal relation,
with the explicit attributes sname and
course, recording the courses each stu-
dent has taken. One possible temporal
query on this relation is, “What courses
was Phil enrolled in at the start of the
fall 1991 semester, as known on July 1,
1991?” This query, relevant if preregis-
tration is allowed, specifies a rollback to
the historical state current at a transac-
tion time of July 1, 1991, then an histori-
cal selection on the valid time of fall
1991. n
In addition to the kinds of time sup-
ported, we must also consider the concep-
tual model of time employed. Two time
models have been proposed: the contin u -ous model, in which time is viewed as
being isomorphic to the real numbers,
and the discrete model, in which time is
viewed as being isomorphic to the natu-
ral numbers (or a discrete subset of the
real numbers) [Clifford and Tansel 1985].
In the continuous model, each real num-
ber corresponds to a “point” in time; in
the discrete model, each natural number
corresponds to a nondecomposable unit of
time having an arbitrary duration. Al-
though the two time models represent
time differently, they share one impor-
tant property: They both require that
time be ordered linearly. Hence, for two
ACM Computmg Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras ● 507
(1) (2) (3) (4)
tink? time time time
transaction&
time
Figure 5. A temporal relation
nonequal times, tl and t2,either tl isbefore t2 or t2 is before tl [Anderson
1982; Clifford and Tansel 1985].
“instant” [Gadia 19861, “moment”
[Allen and Hayes 1985], “time quantum”
[Anderson 1982], and “time unit”
[Navathe and Ahmed 1987; Tansel 19861
are terms used in the literature to de-
scribe a nondecomposable unit of time in
the discrete model. To avoid confusion
between a point in the continuous model
and a nondecomposable unit of time in
the discrete model, we refer to a nonde -
composable unit of time in the discrete
model as a ch-onon [Ariav 1986; Clifford
and Rao 1987] and define an interval tobe a set of consecutive chronons. Al-
though the duration of each chronon in a
set of times need not be the same, the
duration of a chronon is usually fixed by
the granularity of the measure of time
being used (e.g., semester, hour, second).
A chronon typically is denoted by an in-
teger, corresponding to a single granu-
larity, but it may also be denoted by a
sequence of integers, corresponding to a
nested granularity. For example, if we
assume a granularity of a day relative to
January 1, 1980, then the integer 1901
denotes March 15, 1985. If, we assume a
nested granularity of (year, month, day),
then the sequence (6, 3, 15) denotes
March 15, 1985.
Although time itself is generally per-
ceived to be continuous, most proposals
for adding a temporal dimension to the
relational data model are based on the
discrete time model. Several practical ar-guments are given in the literature forthe preference of the discrete model overthe continuous model. First, measures of
time are inherently imprecise [Anderson1982; Clifford and Tansel 1985]. Clock-ing instruments invariably report the oc-currence of events in terms of chronons,not time “points.” Hence, events, evenso-called “instantaneous” events, can atbest be measured as having occurredduring a chronon. Second, most naturallanguage references to time are compati-ble with the discrete time model. Forexample, when we say that an event oc-curred at 4:30 p.m., we usually do notmean that the event occurred at the“point” in time associated with 4:30 p.m.,but at some time in the chronon (perhapsminute) associated with 4:30 p.m.
[Anderson 1982; Clifford and Rao 1987].
Third, the concepts of chronon and inter-val allow us to naturally model eventsthat are not instantaneous but haveduration [Anderson 19821. Finally, anyimplementation of a data model with atemporal dimension will of necessity haveto have some discrete encoding for time
[Snodgm= 19871. All the temporal alge-
bras surveyed in this paper are compati-ble with the discrete time model.
Four basic design decisions charac-terize the types of objects a temporalalgebra defines. These decisions arisebecause both valid and transaction timemust be recorded in some way inrelations. There is more latitude in rep-resenting valid time because it is inde-pendent of data storage.
o Is valid time associated with tuples(usually as additional implicit or ex-plicit attributes) or with the attributes’values?
ACM Computing Surveys, Vol. 23, No. 4, December 1991
508 “ L. E. McKenzie and R. Snodgrass
e
e
e
How is valid time represented? Time-stamps, which represent valid time,may be either chronons, intervals, orsets of intervals, where a set of inter-vals is denoted with a set of chronons,not all of which are consecutive.
Are attribute values required to beatomic valued, or are they allowed tobe set valued? Although first normalform dictates that attributes be atomicvalued in a snapshot relation, at-tribute values that are atomic valuedat all points in time may nonethelessbe set valued when their behavior overtime is recorded.
Is transaction time associated with at-tribute values, tuples, or sets of tuples?
Two basic design decisions character-
ize the different kinds of operations each
algebra provides. The first design deci-
sion represents a choice of one of onlytwo possible alternatives; the second con-cerns the four basic operations concern-ing time that should be supported by atemporal algebra.
e
●
i..
Does the algebra retain the set-
theoretic semantics of the five basicrelational operators and introduce newoperators to deal with time, or does thealgebra extend the semantics of theexisting relational operators to accountfor the temporal dimension directly?
How does the algebra handle temporalselection (i. e., tuple selection based onvalid time-stamps), rollback (i. e., tupleselection based on transaction time-stamps), temporal projection (i. e., com-putation of a new time-stamp for atuple or attribute from its currenttime-stamp), and temporal aggregation(i. e., computation of a distribution ofaggregate values over time)— oper-ations that are unique to a temporala!gebra?
2 Overview of Algebras
We now review briefly 12 algebras thatextend the snapshot algebra to supportvalid time and in some cases also trans-action time. These algebras differ in the
types of objects they define and in thekinds of operations they provide. Be-cause some of the algebras have similarnames and others are unnamed, we iden-tify each algebra with the name of thefirst author of the paper in which thealgebra is presented, except for the het-erogeneous algebra discussed in Gadiaand Yeung [1988] and Yeung [1986],which we will identify as Yeung’s alge-bra to avoid confusing it with Gadia’s
[19881 homogeneous algebra. We did notinclude TERM [Klopprogge 1981], PDM
[Manola and Dayal 19861, or the account-ing data model (ADM) algebra [Thomp-son 1991], all of which include supportfor time, in this evaluation since they aretemporal extensions of other data mod-els. TERM is an extension of the entity-relationship model [Chen 1976]; PDM isan extension of the entity-orientedDaplex functional data model [Shipman1981j; and the ADM is an extension ofthe relational model incorporating sets ofsynchronized time-varying relations.Also, in passing we will mention threevariants of the algebras we do study.
A detailed examination and justifica-tion of all of the decisions made witheach algebra is outside the scope of the
paper. Rather, this section introduces
each algebra as a prelude to a detailed
comparison, where certain aspects of eachalgebra that relate to the specific criteriaare discussed in detail.
We first examine the models thattime-stamp tuples, then discuss thosethat time-stamp attribute values, andfinish with Tuzhilin’s algebras, which arelargely independent of data model. Weproceed chronologically.
1.2.1 Jones
LEGOL 2.0 [Jones et al. 1979] is a lan-guage designed to be used in databaseapplications, such as legislative ruleswriting and high-level system specifica-tion, in which the temporal ordering ofevents and the valid times for objects areimportant. It was the first time-orientedalgebra defined; it introduced many ofthe features found in later algebras,
ACM Computmg Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras 9 509
Objects in the LEGOL 2.0 data modelare relations as in the relational datamodel, with one distinction. Tuples inLEGOL 2.0 are assigned two implicittime attributes, start and stop. The val-ues of these two attributes are thechronons corresponding to the (inclusive)end points of the interval of’ existence(i.e., valid time) of the real-world entityor relationship represented by a tuple;these values are specified during dataentry by the user.
Example
R is a historical relation in LEGOL 2.0over the explicit attributes { sname?course}, shown in Figure 3. Later ex-amples in this section will show the se-mantically equivalent representation ofR in the other algebras. Because thealgebras all define relations differentlyand, in some cases, require implicit at-tributes, we show all relation examplesin tabular form for both clarity and con-sistency of notation. This relation showsthat Phil was a student in the Englishcourse for the fall 1980 semester and forthe fall and spring 1981 semesters. ❑
LEGOL 2.0 retains the standard set-theoretic operations and introduces sev-eral time-related operations to handle thetemporal dimension of data. Operationsin LEGOL 2.0 are not defined formally;the more important operations are de-scribed using examples. The new time-related operations are time intersection,
time-related operations are left unspeci-fied, these operators appear to support alimited form of temporal selection as wellas a temporal join using union semantics(i.e., the valid time of each output tupleis the union of the valid times of twooverlapping input tuples).
1.2.2 Ben-Zvi
The Time Relational Model [Ben-Zvi1982] supports both valid time and trans-action time; it was the first to do so. Twotypes of objects are defined: snapshot re-lations, as defined in the snapshot alge-bra, and temporal relations. Temporalrelations are sets of tmples, with eachtuple having five implicit time at-tributes. The attributes effective-time-start and effective-time-stop are the endpoints of the interval of existence of thereal-world phenomenon being modeled;registration-time-start is the transac-tion time of the transaction that storedthe effective-time-start; registration-time-stop is the transaction time thatstored the effective-time-stop; and dele -tion-time records the time when erro-neously entered tuples are logicallydeleted. An erroneous attribute valuemay be corrected by deleting that tupleand inserting a corrected one.
Example
R is a temporal relation in the TimeRelational Model over the explicit at-tributes {sname, course} containingfour tuples.
R= effective effective registration registration deletionsnmne course time-start time-stop time-start time-stop time
“Phil” “English” 1 1 423 427“Phil” “English” 3 4 444 452“Norman” “English” 1 2 423 438“Norman” “Math” 5 6 469 487
—.one-sided time intersection, time union,time difference, and time-set member-ship. Time intersection acts as a tempo-ral join, where the valid time of eachoutput tuple is computed using intersec-tion semantics (i.e., the valid time of eachoutput tuple is the intersection of thevalid times of two overlapping input tu-pies). Although the semantics of the other
Note that none of the tuples has been(logically) deleted. ❑
A new Time-View operator, TV = ( te,t,) that maps a temporal relation in-stance onto a snapshot relation instanceis introduced. The Time-View operatorcan be thought of as a limited form oftemporal selection that selects from the
ACM Computing Surveys, Vol. 23, No 4, December 1991
510 “ L. E. McKenzie and R. Snodgrass
relation those tuples with a valid timecontaining te and a transaction time con-taining t,.Once the specified tuples areselected, however, the Time-View opera-tor discards their implicit time attributesto construct a snapshot relation.
Example
If we let TV = (1, 425), then
TV(R) = sname course
“Phil” “English”“Norman” “English”
❑
The semantics of the five relation-
al operators—union, difference, join, se-
lection, and projection—is extended to
handle both the valid time and the trans-
action time of tuples directly. These op-
erators, like the Time-View operator, are
all defined in terms of a transaction time
t. and a valid time t,.Input tuples arerestricted to those tuples in an input re-lation instance at valid time t,having atransaction time of t.;the valid times ofall tuples that participate in an opera-tion are thus guaranteed to overlap attime te.Each operator computes the validtime of its output tuples from the validtimes of qualifying tuples in its inputrelations using union or intersection se-mantics. For example, the union opera-tor is defined using union semantics, andthe join operator is defined using inter-section semantics. These two operatorscannot be simulated by the conventionalrelational operators. What would beneeded is a projection operator that al-lowed expressions using the two simplefunctions first( a, b) ( = if a >6 then belse a) and last(a, b). The valid time oftuples resulting from the difference oper-ator is left unspecified.
1.2.3 Navathe
The Temporal Relational Model [Navatheand Ahmed 1987] and its associated alge-bra were defined primarily to supportTSQL [Navathe and Ahmed 1989], atime-oriented extension to SQL defined
in the same paper. The model allows bothnon-time-varying and time-varying at-tributes, but all of a relation’s attributesmust be of the same type. Objects areclassified as snapshot relations, whoseattributes are all nontime varying, andhistorical relations, whose attributes areall time varying. The end points of theinterval of validity of tuples in historicalrelations are recorded in two mandatorytime attributes—time-start and time-end. (The name of this model is mislead-ing, because only valid time is supported. )The structure of a historical relation inthe Temporal Relational Model is thesame as that of a historical relation inLEGOL 2.0 (Figure 3), with one addi-tional restriction. Value-equivalent tu-
ples (whose values on the nontime-stampattributes are identical), although al-lowed, are required to be coalesced (i. e,
adjacent intervals replaced with a singleinterval) so contiguous intervals are notrepresented by two value-equivalent tu-pies. The set-theoretic operators are re-tained, and five additional operators ontime-varying relations are introduced.The operators Time-Slice, Inner Time-View, and Outer Time- View are all formsof temporal selection. TCJOIN and TC-
NJOIN are both join operators definedusing intersection semantics. Two otherjoin operators, TJOIN and TNJOIN, arediscussed. They retain the (multiple)time-stamps of underlying tuples in theirresulting tuples and are, therefore, out-side the algebra because they produceillegal tuples. These various selection andjoin operators produce differing validtimes in the resulting relation.
1.2.4 Sadeghi
Sadeghi’s [1987] algebra is similar inmany ways to Navathe’s. It was designedto support the calculus-based historical
query language HQL [Sadeghi et al.1987], which in turn is based on DEAL
[Ileen 19851. In Sadeghi’s algebra, allobjects are historical relations. Two im-plicit attributes, start and stop, recordthe end points of each tuple’s interval ofvalidity. Hence, the structure of a histor-
ACM Computing Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras ● 511
ical relation in Sadeghi’s algebra is alsothe same as that of the historical relationin LEGOL 2.0 (Figure 3). Sadeghi’s alge-bra requires that value-equivalent tuplesbe coalesced. Temporal versions of thesnapshot operators union, difference,Cartesian product, selection, projection,and join are defined. Both Cartesianproduct and join are defined using inter-section semantics. A new operator,WHEN, is introduced to perform tempo-ral selection. It maps a historical rela-tion instance onto the intervals that arethe time-stamps of tuples in the instance.Whether the result of this operationis another type of object of a historical.relation without explicit attributes isunclear.
The next algebra, along with those ofTansel and Lorentzos, incorporates oper-ators to switch between an interval rep-resentation, which is space efficient andmore appropriate for presentation, and asingle chronon-based representation,which is effectively a union of time slicesthat may be manipulated simultaneous-ly with conventional relational opera-tors but which are also highly spaceinefficient.
1.2.5 Sarda
Sarda’s [1990] algebra associates validtime with tuples, Objects can be eithersnapshot or historical relations. Unlikethe algebras mentioned previously,Sarda’s algebra represents valid time ina historical relation as a single, non-atomic, implicit attribute named period.Also, unlike the other algebras, a tuplein Sarda’s algebra is not considered validat its right-most boundary point; that is,the interval is closed on the left and openon the right.
Example
R is a historical relation instance inSarda’s algebra containing four tuples:
R= sname course period
“Phil” “English” 1 ..2“Phil” “English” 3 ...5“Norman” “Enghsh” 1 ..3“Norman” “Math” 5’7. . .
The first two tuples signify that Phil wasenrolled in English during fall semester1980 and fall semester 1981 but notduring the spring semester 1981. D
Sarda’s algebra retains the basicsemantics of some of the set-theoretic operators, extends the definition of one op -erator to handle valid time directly, andintroduces several new operators. Projec-tion and Cartesian product are defined totreat the implicit attribute period thesame as they would an explicit attributerather than associating special time-oriented semantics with this attribute asdo most of the other algebras. Projectionmaps a historical relation instance ontoeither a snapshot or a historical relationinstance, depending on whether the im-plicit attribute period is a projection at-tribute. Similarly, Cartesian productsimply combines tuples from two histori -cal relations, without discarding orchanging their time-stamps. Hence, theresult of a Cartesian product is not ahistorical relation, which by definitioncontains one implicit period attribute,but rather a snapshot relation with twononatomic attributes, one containing theperiod of validity of a tuple from the firstargument relation and one containing theperiod of validity of a tuple from thesecond argument relation. The semantics
of the selection operator is extended toallow for temporal as well as nontempo-ral predicates. Whether the algebra re-tains the set-theoretic semantics of unionand difference is left unspecified.
EXPAND, CONTRACT, PROJECT-AND-WIDEN, and CONCURRENTPRODUCT are the new operators. EX-PAND produces, for each chronon in thetime-stamp of each tuple in a historicalrelation, a value-equivalent tuple withthat chronon as its time-stamp, CON-TRACT, the inverse of EXPAND,coalesces value-equivalent tuples. PRO-JECT-AND- WIDEN is a form of tempo-ral projection that coalesces value-equiv-alent tuples, and CONCURRENTPROD UCT is Cartesian product definedusing intersection semantics.
APM Pam,,,,+; ma %,.,,..,. V.1 9? No A Tbc.rnhw 1991
512 ● L. E. McKenzie and R. Snodgrass
The remaining algebras use distinctnon-first normal form (non-lNF) datamodels, with attribute value time-stamp-ing and perhaps with multiple values per
attribute. The nonatomicity of attributevalues is due to their time-varying na-ture; any time-slice will usually be infirst normal form. Hence, the data modelof these algebras is an extension of theconventional (lNF) relational model. Therepresentation, viewed as a normal rela-tion, is certainly not in lNF, but thenthe algebra does not operate on conven-tional relations; it operates on historicalrelations, which are extensions of con-ventional relations.
1.2.6 Clifford
Clifford [1982] was the first to suggestincorporating the temporal dimension atthe attribute level. This idea appeared inthe Historical Database Model [Cliffordand Warren 1983] and its associated al-gebra [Clifford and Tansel 1985]. TheHistorical Relational Data Model [Clif-ford and Croker 1987], a refinement ofthat model, is unique in that it associatestime-stamps with both the tuple and witheach attribute value. The data model al-lows two types of objects– a set ofchronons, termed a lifespan, and a his-
torical relation, where each attribute inthe relation schema and each tuplein the relation is assigned a lifespan. Arelation schema in the HistoricalRelational Data Model is an orderedfour-tuple containing a set of attributes,a set of key attributes, a function thatmaps attributes to their lifespans, and afunction that maps attributes to theirvalue domains. A tuple is an orderedpair containing the tuple’s value and itslifespan. Attributes are not atomic val-
ued; rather, an attribute’s value in agiven tuple is a partial function from thedomain of chronons onto the attribute’svalue domain, defined for the attribute’svalid time (i. e., the intersection of theattribute and tuple Iifespans). Relationshave key attributes, and no two tuples ina relation are allowed to match on thevalues of the key attributes at the samechronon.
Example
R is a historical relation instance in theHistorical Relational Data Model, where(~nam~ + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10},~ourse + {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}} isthe function assigning lifespans toattributes.
R= Tuple Vulue Tupk Lifespan
sname course
1 +<’phil” 1 +“English” {1.3.4}3 +’<Phil” 3 + “Enghsh”4 +“phil” 4 +“Enghsh”
1 + “Norman” 1 + “Engllsh” {1.2,5,6}2 +“Norman” 2 +“English”5 ~“Norman” 5 +“Math”6 +“Norman” 6 “’Math”
Because tuple lifespans are sets and be-cause both Phil and Norman were never
enrolled in more than one course at thesame time, we are able to record each oftheir enrollment histories in a single tu-ple. If someone had been enrolled in two
or more courses at the same time, how.ever, his total enrollment history could
not have been recorded in a single tuple
since attribute values are ftmctions from
a lifespan onto a value domain. Note alsothat we have chosen the most straight-
forward representation for an attribute
whose value is a function. Because at-
tribute values in both Clifford’s algebra
and Gadia’s algebras, which we describe
later, are functions, they have many
physical representations. D
The semantics of the relational oper-
ators union, difference, intersection,
projection, and Cartesian product isextended to handle lifespans directly. Forexample, the lifespan of each tuple out-put by Cartesian product is the union ofthe lifespans of the two tuples in the
input relations that contribute to the
output tuple. A null value is assigned to
an attribute in the output tuple for each
chronon that is in the lifespan of the
output tuple but not in the lifespan of the
input tuple associated with that at-
tribute. Also, temporal versions of G-join,
equi-join, and natural join are defined
using intersection semantics, and several
ACM Computing Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras “ 513
new time-oriented operations are intro-duced. WHEN maps a relation instanceonto its lifespan, where the lifespan of arelation is defined to be the union of thelifespans of its tuples (e.g., {1,2,3,4,5,6}in the above example). SELECT-IF is aform of temporal selection that selectstuples that are both valid and satisfy agiven selection criterion at a specifiedtime, and TIME-SLICE is a form of tem-poral projection that restricts the tupleIifespans of its resulting tuples to someportion of their original lifespans. Theoperator SELECT-WHEN possesses fea-tures of both temporal selection and tem-poral projection; it is a variant ofSELECT-IF that restricts the tuple life-spans of its resulting tuples to the timeswhen they satisfy the selection condition.Finally, a TIME-JOIN operator is de-fined that restricts the tuple lifespans ofits resulting tuples to the value of atime-valued attribute.
1.2.7 Tarisel
Tansel’s historical algebra [Clifford andTansel 1985; Tansel 1986] allows onlyone type of object—the historical rela-tion. Four types of attributes are, how-ever, supported: Attributes may be eithernon-time-varying or time-varying, andthey may be either atomic-valued or set-valued. The attributes of a relation neednot be the same type, and attribute val-ues in a given tuple need not be homoge-neous. The value of a time-varying,atomic-valued attribute is represented asa triplet containing an element from theattribute’s value domain and the bound-ary points of its interval of existence,whereas the value of a time-varying, set-valued attribute is simply a set of suchtriplets. This data model makes thisalgebra a convenient target for interpret-ing queries expressed in the Time-by-Example language [Tansel et al. 19891and in HQuel [Tansel and Arkun 19861.
Example
R is a historical relation instance inTansel’s algebra, where sname is a non-time-varying, atomic-valued attribute
and course is a time-varying, set-valued-attribute.
R= sname course
“Phil” {( [1, 2), “English”),( [3, 5), “English”)}
“Norman” {([1, 3), “English”),( [5, 7), “Math”)]
The enrollment history of a student canbe recorded in single tuple, even if thestudent was enrolled in two or morecourses at some time. Note, however, thateach interval of enrollment, even forthe same course, must be recorded as aseparate element of a time-varying,set-valued attribute. ❑
The conventional relational operatorsare extended to account for both the tem-poral dimension of data and presence ofset-valued attributes, and several newtime-related operations are introduced.The PACK operators combines tupleswhose attribute values differ for onespecified attribute but are otherwiseequal. Conversely, UNPACK replicatesa tuple for each element in one of itsset-valued attributes. T-DEC decomposesa time-varying, atomic-valued attributein a historical relation into three non-time-varying, atomic-valued attributes,representing the three components of thetime-varying, atomic-valued attribute.Conversely, T-FORM combines threenontime-varying, atomic-valued at-tributes, representing a value and theboundary points of the value’s interval ofvalidity into a single time-varying,atomic-valued attribute. DROP- TIMEdiscards the time components of atime-varying attribute. Finally, SLICE,USLICE, and DSLICE are limited formsof temporal projection in which the time-stamp of a time-varying attribute is re-computed as the intersection, union, anddifference, respectively, of its originaltime-stamp and the time-stamp of an-other specified attribute. If the recom-puted time-stamp is empty, the tuple isdiscarded. Finally Tansel introduces anew operation, termed enumeration, tosupport aggregation [Tansel 19871. Theenumeration operator derives, for a set of
ACM Computing Surveys, Vol 23, No 4, December 1991
514 “ L. E. McKenzie and R. Snodgrass
chronons or intervals and a historical ensures that a snapshot of a historicalrelation, a table of data to which aggre-gate operators (e.g., count, avg, rein) canbe applied.
Example
Let Rz be thestance resulting
historical relation in-from the unpacking of
R= sname
[1,2) U [3,5) *“Phil”
relation at time t always produces a con-ventional snapshot relation withoutnulls.
Example
R is a historical relation instance inGadia’s homogeneous model.
course
[1, 2) U [3,5) ~“Enghsh”
[1,3) U [5,7) +“Norman” [1,3) +“English”[5, 7) +“Math”
attribute course of R in the previousexample containing four tuples.
R2 = sname course
“Phil” ( [1, 2), “English”)“Phil” ( [3, 5), “English”)“Norman” ( [1, 3), “English”)“Norman” ( [5, 7), “Math”)
Now, let R~ be the historical relationinstance resulting from the decomposi-tion (T-DEL’) of attribute course of rela-tion Rz, where sname, course, course L?and course ~, are all non-time-varying,atomic-valued attributes, the latter twocomputed by the T-DEC operator.
Ra = sname course course~ courser,
“Phil” “English” 1 2“Phil” “English” 3 5‘<Norman” “English” 1 3“Norman” “Math” 5 7
1.2.8 Gadia
Gadia’s [19881 homogeneous modelallows two types of objects: temporalelements and historical relations. A tem-poral element is a finite union of disjointintervals (effectively a set of chronons),and attribute values are functions fromtemporal elements onto attribute do-mains [Gadia and Vaishnav 1985]. Tem-poral elements are closed under union,intersection, and difference, unlike inter-val time-stamps. The model requires thatall attribute values in a given tuple befunctions on the same temporal element.This property, termed homogeneity,
Here the interval [ tl, t2) is the set ofchronons { tl, . ,t2– 1}.Again, we are
able to record the enrollment historiesof Phil and Norman in single tuplesonly because they were never enrolled inmore than one course at the same time(otherwise multiple tuples are required).
n
A historical version of each of the fivebasic conventional relational operators isdefined using snapshot semantics. Foreach historical operator, the snapshot ofits resulting historical relation at time tis required to equal the result obtainedby applying the historical operator’s re -lational counterpart to the snapshot ofthe underlying historical relations attime t.Two new operators are also intro-duced. One, tdom, maps either a tuple ora relation instance onto its temporal do-main, where the temporal domain of atuple is its temporal element and thetemporal domain of a relation is theunion of its tuples’ temporal elements.For example, the temporal domain of Rabove is [1, 7). The other operator, termedtemporal selection, is a limited form ofboth temporal selection and temporalprojection; it selects from a relation thosetuples whose temporal elements overlapa specified temporal element and re-stricts attribute values in the resultingtuples to the intersection of their tempo-ral elements and the specified temporalelement.
Bhargava’s two-dimensional model[Bhargava and Gadia 1990, 1991] is anextension of Gadia’s homogeneous model;it supports both valid and transactiontime. Many of the criteria concerning
ACM Computing Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras ● 515
transaction time that are satisfied byYeung’s algebra, discussed below, arealso satisfied by Bhargava’s algebra.
1.2.9 Yeung
Gadia’s [1986] multihomogeneous modeland Yeung’s heterogeneous models
[Gadia and Yeung 1988; Yeung 19861 areall extensions of the homogeneous model.They lift the restriction that all attributevalues in a tuple be functions on thesame temporal element, in part to beable to perform Cartesian product with-out loss of temporal information causedby merging two time-stamps into one.Here we consider only the latest [Gadiaand Yeung 1988] of these extensions. Inthis (termed Yeung’s) algebra, temporalelements may be multidimensional tomodel different aspects of time (e. g., validtime and transaction time). Attributevalues are still functions from temporalelements onto attribute value domains,but attribute values need not be func-tions on the same temporal element. Ex-pressed a different way, some time-slicesmay contain nulls. Relations are as-sumed to have key attributes, with therestriction that such attributes be singlevalued over their interval of validity.Also, no two tuples may match on theranges of the functions assigned to thekey attributes. Hence, in the previousexample the attribute sname wouldqualify as a key attribute in the hetero-geneous model. The semantics of union,Cartesian product, selection, projection,and join are extended to account for tem-
with a nested granularity and to supportperiodic events. As with the algebras dis-cussed above, this algebra associatestime-stamps with individual attributevalues rather than with tuples. Althougha time-stamp is normally associated witheach of the attribute values in a tuple, atime-stamp may be associated with anynonempty subset of attribute values in atuple. Furthermore, no implicit ormandatory time-stamp attributes are as-sumed. Time-stamps are simply explicit,numeric-valued attributes to be viewedand updated directly by the user. Theyrepresent either the chronon duringwhich one or more attribute values arevalid or a boundary point of the intervalof validity for one or more attributevalues. A time-stamp in the TemporalRelational Algebra, like one in Sarda’salgebra, does not include its rightmostboundary point. Several time-stamp at-tributes may also be used together torepresent a chronon of nested granular-ity. This algebra is also misnamed, as itonly supports valid time.
Example
Let R be a historical relation instance inthe Temporal Relational Algebra over theattributes { sname, course, semester-start, semester-stop, week-start,week-stop}, where all four time-stampattributes are associated with bothsname and course. Assume the granu-larity for the time-stamp attributesweek-start and week-stop is a week rel-ative to the first week of a semester.
R= sname course semester-start semester-stop week-start week-stop
“Phil” “English” 1 2 1 9“Phil” “English” 3 5 1 17“Norman” “English” 1 3 1 9“Norman” “Math” 5 7 9 17
porally” heterogeneous attribute values-. In this example, we specify the weeksAlso, temporal variants of selection and during a semester when a student wasjoin are introduced. The semantics of dif- enrolled in a course. For example, Philference and intersection, however, are left was enrolled in English during fallunspecified. semester 1980 for only the first eight
1.2.10 Lorentzos weeks of the semester. Note that themeaning of the week-start and week-
The Temporal Relational Algebra stop attributes is relative to the[Lorentzos 1988; Lorentzos and Johnson semester-start and semester-stop1988] was the first to support time-stamps attributes. ❑
ACM Computmg Surveys, Vol 23, No 4, December 1991
516 0 L. E. McKenzie and R. Snodgrass
The standard set-theoretic operationsremain unchanged in the Temporal Rela-tional Algebra. Although no new time-oriented operations are introduced, threenew operators, EXTEND, UNFOLD, andFOLD, which are defined in terms of theconventional relational operators, areintroduced. These operators allow con-version between relations whose tuplescontain two time-stamp attributes, repre-senting the end points of the interval ofvalidity of one or more attributes, toequivalent relations whose tuples con-tain a single time-stamp attribute repre-senting a chronon during which the sameattributes are valid. Relations whose tu-ples contain only time-stamp attributesrepresenting the end points of intervalsof validity are considered to be folded,whereas relations whose tuples containonly time-stamp attributes representingindividual chronons of validity are con-sidered to be unfolded. Relation R in theabove example is folded.
Example
Rz shown below, is an equivalent repre-sentation of R in which the two time-stamp attributes semester-start andsemester-stop have been unfolded ontoa single time-stamp attribute semester.Note that every value in the originalinterval defined by the values of the orig-inal time-stamp is found in a separatetuple, with a single time-stamp for thesemester attribute.
algebra, the user must first UNFOLDeach underlying relation, then manipu-late the resulting relations using conven-tional algebraic operators, then FOLDthe result back into a relation represent-ing intervals. The data model thus dif-fers from the normal relational modelonly in that certain columns are given aspecific interpretation as representingthe period of validity of other column(s)in the relation. The operations are de-fined in terms of the conventional rela-tional algebra but serve to manipulatethese particular columns to convert be-tween an interval-based representationand a chronon-based representation.
1.2.11 McKenzie
McKenzie’s temporal algebra [McKenzie1988; McKenzie and Snodgrass 19911
time-stamps attribute values but retainsthe requirement that attributes be singlevalued in an effort to achieve the bene-fits of attribute-value time-stamping(e. g., the ability to perform a Cartesianproduct) without the implementationcomplexities of set-valued attributes. Thetwo types of objects in this algebra arethe snapshot and historical relations. Arollback relation is a sequence of snap-shot relations; a temporal relation is asequence of historical relations, both in-dexed by transaction time. The value ofan attribute in a historical relation isalways an ordered pair whose compo-
Rz = sname
“Phil”“Phil”“Phil”“Norman”“Norman”“Norman”“Norman”
cource
“English”“English”“English”“English”“Engllch”“Math”“Math”
semester week-start—
1 13 14 11 1~ 15 96 9
week-stop
91717
99
1717
We could now apply UNFOLD once moreto unfold the attribute week-start and
nents are a value from the attribute’s
the attribute week-stop onto a singledomain and a set of chronons. There is
time-stamp attribute week. The result-no requirement that the time-stamps of
ing relation would have 72 tuples. nany of the attribute values in a relationbe homogeneous, but relations are not
In order to do such things as temporal allowed to have two tuples with the sameselection and temporal projection in this value component for all their attributes;
ACM Computmg Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras ● 51’7
that is, value-equivalent tuples aredisallowed.
Example
R is a historical relation instance inMcKenzie’s algebra containing threetuples.
R= sname course
(“Phil”, [1, 3, 4}) (“English”, {1, 3, 4})(“Norman”, {1, 2}) (“English”, {1, 2})(“Norman”, {5, 6}) (“Math”, {5, 6})
In McKenzie’s algebra, Phil’s enrollmentin English must be recorded in a singletuple; otherwise the value-equivalenceproperty would be violated. Norman’senrollment history, however, cannot berecorded in a single tuple; an attributemay be assigned only one value from itsvalue domain. ❑
The conventional re~ational opera-tors are extended to account for the temp-oral dimension of data directly and pre-serve the value-equivalence property ofhistorical relations. One new operator,historical derivation (8), is introducedspecifically to handle temporal selectionand temporal projection. Two operators,snapshot and historical rollback (P andD), are available to extract a snapshot orhistorical state from a rollback or tempo-ral relation, respectively. Finally, twooperators are available to performnonunique and unique aggregation andtwo to convert between historical andsnapshot relations.
1.2.12 Tuzhilin
Tuzhilin proposes two algebras, termedTA and TA, as bases for temporal re-lational completeness [Tuzhilin andClifford 19901. When discussing proper-ties satisfied by both, we will refer sim-ply to Tuzhilin’s algebra. The operatorsin these algebras were designed to bepowerful yet simple and to be based on awell-accepted formalism of temporal logic[Rescher and Urquhart 1971]. Tuzhilin’salgebras apply to historical relational ob-jects supporting discrete, linear-bounded
valid time and a time slice operator thatproduces first normal form relationswithout nulls. Hence, it could be appliedto any of the objects associated with theother algebras discussed in this paper.
The conventional relational operatorsare given a time-slice consistent seman-tics, ensuring that the algebra reduces tothe relational algebra for each time slice.In Tuzhilin’s TA algebra, two additionalbinary operators are proposed, the futurelinear recursive operator L ~ and the pastlinear recursive operator IL ~. The expres-sion C = L ~ (A, l?) computes tuplesvalid at time t+ 1 from tuples of C, A,and B valid at time t.C is valid at timet + 1 if C and A were valid at time t orif B was valid at time t.LP analogouslycomputes tuples at time t–l. InTuzhilin’s TA’ algebra, future and pastversions of three unary operators areproposed, sequential union (SU~ andSUP), which “compresses” future or pasthistory into a single time (i.e., every-thing true at time t or at some timet’> t of the argument relation is consid-ered true at time t in the result relation),sequential intersection (S1 ~ and S1 ~),which gives those tuples that remainedconstant in the past or future to now, andshift (SH~ and SH ~), which “shifts” tu -ples forward or backward one time unit.
1.3 Summary
The following summary oversimplifiesthe algebras in an effort to differentiatethem.
●
●
●
●
●
Jones was the first to define a time-oriented algebra.
Ben-Zvi was the first to add transac-tion time.
Navathe defined his algebra primarilyto support his extension to SQL calledTSQL.
Sadeghi’s algebra was defined primar-ily to support his extension to DEALcalled HQL.
Sarda. Lorentzos, and Tansel all incor-porate operators “to switch between aninterval representation and a singlechronon representation. Lorentzos’
ACM Computmg Surveys, Vol 23, No 4, December 1991
518 “ L. E. McKenzie and R. Snodgrass
e
*
*
algebra, closest to the conventional re-lational data model, supports nestedgranularity time-stamps and periodictime.
Clifford, Gadia, Yeung, and Tansel allemploy non-lNF data models. Cliffordemphasizes associating time-stampswith both the attribute value and withthe tuple; Gadia emphasizes the homo-geneity property; Yeung emphasizesthe multihomogeneous property; andTansel includes four types of attributevalues.
McKenzie time-stamps attribute val-ues but retains the requirement thatattributes have only a single valuewithin a tuple.
Tuzhilin defined his algebras as a met-ric for temporal completeness.
Tables 1 and 2 summarize the featuresof the 12 algebras mentioned above.These tables show the range of solutionschosen by the developers of the algebrasto 5 of the basic design decisions intro-duced in Section 1.1. The sixth designdecision is not included since only Ben-Zvi’s, Yeung’s, and McKenzie’s algebrassupport transaction time. Table 1 cate-gories the algebras according to theirrepresentation of valid time. Clifford’salgebra also associates time-stamps withattributes in a relation schema as well aswith tuples in a relation (i. e., the tuple’slifespan). Yeung associates transactiontime with attribute values; Ben-Zvi asso-ciates transaction time with tuples, andMcKenzie associates transaction timewith snapshot and historical states.
Table 2 describes other basic featuresof the types of objects defined and opera-tions allowed in the algebras, The fourthcolumn indicates whether each algebraretains the set-theoretic semantics of thefive basic relational operators or extendsthe operators to deal with time directly.The final column lists new operators in-troduced specifically to handle the tem-poral dimension of the phenomena beingmodeled.
In the next section we discuss a collec-tion of criteria for evaluating temporalextensions of the snapshot algebra. In
Section 3 we evaluate these 12 algebrasagainst the criteria.
2. CRITERIA
Although several historical and temporalalgebras have been proposed, previousresearch has not focused on defining cri-teria for evaluating the relative merit ofthese algebras. Only Clifford presents alist of specific properties desirable of atemporal extension of the snapshot alge-bra [Clifford and Tansel 19851. He identi-fies five fundamental, conceptual goals,which will be discussed in detail shortly.These goals alone are insufficient toevaluate the relative merit of the pro-posed algebras. A more comprehensive
collection of specific, objective criteria isneeded. In this section, we identify 26such criteria for evaluating temporal ex-tensions of the snapshot algebra. First,we introduce the criteria. With each cri-terion, we indicate its source, if relevant.We identify the important aspects to con-sider when defining a temporal algebra.We argue that each is well defined, hasan objective basis for being evaluated,and is arguably beneficial. Next, wediscuss our reasons for not including ascriteria several other properties of histor-ical and temporal algebras. We use theterms criteria and property to delineatewhat is included in our evaluation of thealgebras and what is not, respectively.Then, we examine in compatibilitiesamong the criteria. For clarity, we repre-sent a historical or temporal operator(either defined on an extension of therelational model or having a differentsemantics) as 0$ to distinguish it fromits snapshot algebra counterpart op.
2.1 Adopted Criteria
The criteria appear in alphabetical or-der. Most are relevant to both valid andtransaction time. We identify those fewcriteria relevant to only one kind of time.We also indicate where each criterionfirst appeared.
Criterion 1. All attribute values in atuple are defined for the same interual(s)
[Gadia 19861. This requirement, termed
ACM Computing Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras 9 519
Table 1. Representation of Valld Time m the Algebras
Single chronon Interval Set of chronons(two chronons) (temporal element)
Ben-ZviTime-stamped Jones
tuples NavatheSarda
Sadeghi
l’ime-stampedClifford
LorentzosGadia
attribute TanselMcKenzie
values Yeung
Table 2. Objects and Operations m the Algebras
~,., . .
Algebra Objectsbtanaaru lx ew
Attributes operations operations
Atomic-valued
Functional
Extended
Extended
Time-view
When, Select-If,Select-When,Time-Slice,Time-Jointdom,Temporal selectionTime intersection,One-sided
time intersection,Time union,Time difference,Time-set membershipExtend, Fold, UnfoldHistorical derivation,Historical
aggregation,Rollback, conversionTime-Slice,Inner Time-View,Outer Time-View,TCJOIN, TCNJOINTime Join,WhenExpand,Contract,Project-And-Widen,Concurrent ProductPack, Unpack,T-Dee, T-Form,Drop-Time,Slice, Uslice, Dslice,Enumeration
Seq. Union, Shift,Seq. Intersection,Linear RecursiveTemporal Selection,Temporal Join
Ben-Zvi
Clifford
Snapshot relation,temporal relation
Lifespan,historical relation
Temporal element,historical relation
Historical relation
Functional
Atomic-valued
Snapshotsemantics
Retained
Gadia
Jones
LorentzosMcKenzie
Snapshot relationSnapshot relation,
historical relation
Atomic-valuedOrdered pairs
RetainedExtended
Navathe Snapshot relation,historical relation
Atomic-valued Retained
ExtendedSadeghi
Sarda
Historical relation
Snapshot relationhistorical relation
Atomic-valued
Atomic-valuedandnon-atomic-valued
Atomic-valued,Set-atomic
valued,Triplet valued,Set-triplet
valuedIndependent
Someretained
Othersextended
ExtendedTansel Historical relation
Historical relation ExtendedTuzhilin
Yeung
of representation
Functional ExtendedTemporal relation,temporal element
ACM Computing Surveys, Vol. 23, No. 4, December 1991
520 “ L. E. McKenzie and R. Snodgrass
homogeneity by Gadia, applies when at-tributes are set valued, rather thanatomic valued, and when valid time isassociated with attribute values, ratherthan tuples; the criterion is trivially sat-isfied if tuples are time-stamped. Al-though attributes may change value atdifferent times, this criterion requiresthat, for each chronon for which someattribute has an associated value in atuple, every attribute in that tuple has avalue for that chronon. If this is ensured,the algebra is simplified. In particular,operators need not be redefined to handlevalid time directly. Rather, the algebracan be defined in terms of the con-ventional relational operators usingsnapshot semantics even if set-valued at-tributes are allowed. Also, problems thatarise when disjoint attribute time-stampsare allowed (e. g., how to handle non-empty time-stamps for some, but not all,attributes) need not be considered.
Criterion 2. Consistent extension of thesnapshot algebra [Clifford and Tansel19851. The algebra should be at least aspowerful as the snapshot algebra so thatqueries possible when time was not mod-eled are not forbidden when time isadded. Any relation or algebraic expres-sion that can be represented in the snap-shot model should have a counterpart inthe temporal model. Thus the algebrashould provide, as a minimum, a time-oriented counterpart for each of thefive operators that serve to define thesnapshot algebra: union, difference,Cartesian product, projection, and selec-tion [Unman 1988al. If we assume thefunction Transform converts a snapshotrelation instance into its temporal coun-terpart (with valid and transaction timesof tl and t~, respectively), then Figure 6illustrates the structure of the proof ofthis criterion for the unary snapshot op-erators T and o to show that Tz (thetransformed version of the result of ap-plying the snapshot operator to S) is in-deed equal to the result of applying theanalogous temporal operator to thetransformed version of S. The structureof the proof for the binary operators U,—, and x is similar.
Criterion 3. Data periodicity is sup-ported [Anderson 1981, 1982; Lorentzos1988; Lorentzos and Johnson, 1988]. Pe-riodicity is a property of many real-worldphenomena. Rather than occurring justonce in time or at randomly spaced times,these phenomena recur at regular inter-vals over a specific interval in time. Forexample, a person may have worked from8:00 a.m. until 5:00 p.m. each day, Mon-day through Friday, for a particularmonth. Ideally, a temporal data modelshould be able to represent such periodicphenomena without having to specify thetime of each of their occurrences, andtemporal operators should be able to ma-nipulate such periodic data directly.
Criterion 4. Each collection of legalattribute valaes, drawn from the appro-priate domain(s), is a legal tuple. In thesnapshot model, the value of an attributeis independent of the value of other at-tributes in a tuple, except for key andfunctional dependency constraints. Thesame should be true of the temporalmodel to retain the simplicity of thesnapshot model by not imposing arbi-trary extensions. If we extend the snap-shot model so valid time is assigned toeach attribute, we should extend the con-cept of attribute independence to includethe valid-time component of the attributeas well as the value component of theattribute. Within a tuple, the value orvalid-time component of one attributeshould not restrict arbitrarily the valueor valid-time component of another at-tribute. Limiting legal tuples to somesubset of the possible tuples (such as re -stricting the time-stamp of one attributeto be identical to the time-stamp of an-other attribute, given attribute-valuetime-stamping) adds a degree of complex-ity to the temporal model not found inthe snapshot model. The same considera-tions should hold for transaction time.
Criterion 5. Each set of legal tuples isa legal relation. In the snapshot model,every set of tuples composed of valuesfrom appropriate domains is a legal rela-tion. The same should be true of thetemporal model. Imposing additional in-tertuple constraints (such as not allow-
ACM Computing Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras “ 521
Snapshot TemporalRelation Transform (S, t,,t~ Relation
s ~ TI
i ‘rransform(op (S,t,,tJ)
SnapshotOperator
OP
.—Op(s) — ● Tz= @ (~ )
Figure6. Outline ofanequivalence proof.
ing two tuples with identical attributevalues but different attribute time-stamps or requiring coalescing) addsanother degree of complexity to thetemporal model not found in thesnapshot model.
Criterion 6. Formal semantics are welldefined. Concise, mathematical defini -tions for all object types and operationsare needed. Without such definitions, themeaning of algebraic operations is un-clear. The snapshot algebra already hasa formal semantics [Klug 19821.
Criterion 7. It has the expressive powerof a historical or temporal calculus [Gadia1986]. There should exist a historical ortemporal declarative calculus-basedquery language to be used as the pri-mary user interface to the temporalDBMS, whose expressive power is sub-sumed by that of the algebra, which canthen serve as the underlying evaluationmechanism. Calculus-based query lan-guages are generally easier to use bynovices than algebraic-based languages
[Reisner 1981; Reisner et al, 1975]. Itshould be possible to prove that everystatement in the calculus-based querylanguage can be converted into an ex-pression in the temporal algebra havingan equivalent semantics.
Criterion 8. Includes aggregates. Thetemporal algebra should provide formal
AnalogousTemporalOperator
O-P
semantics for versions of standard aggre-gate operations (e.g., sum, count, rein),which already appear in several ex-tensions of the relational algebra
[Klug 19821.Criterion 9. Incremental semantics are
defined. Studies have shown that it maybe more efficient to implement some re-curring snapshot queries as incremen -tally maintained materialized viewsrather than recomputing the queries eachtime they are asked [Hanson 1987, 1988;Jensen et al. 1991; Roussopoulos 19911.Because this strategy will likely beapplicable to an even larger subclassof temporal queries [McKenzie 19881, anincremental version of the algebra isdesirable.
Criterion 10. Intersection, Cl-join, nat-ural join, and quotient are defined. Inthe snapshot algebra, intersection, O-join,natural join, and quotient are defined interms of the difference, selection, projec-tion, and Cartesian product operators[Unman 1988al. In a temporal algebra,analogous definitions may, but need not,hold. For example, if the historical ver-sions of the basic operators do not retainthe properties of their snapshot counter-parts (e.g., satisfy algebraic equiva-lences), it may not be possible to definehistorical versions of these operators ex-actly as they are defined in the snapshot
ACM Computing Surveys, Vol. 23, No. 4, December 1991
522 * L. E. McKenzie
TemporalRelation
T
TemporalOperator
0>
.
and R. Snodgrass
Snapshot t,, t, (T) SnapshotRelation* SI
Snapshot t,, t,, (oP(T))
%alogousSnapshotOperator
OP
Figure7. Outhneof areductlon proof,
algebra. Hence, formal definitions shouldbe given of these additional operators.
Criterion 11. Is, in fact, an algebra
[Clifford and Tansel 19851. This criterionis fundamental. Any algebra should de-fine the types of objects supported andthe allowable operations on objects ofeach defined type. This subsumes theproperty that the algebra be closed.
Criterion 12. Model does not requirenull attribute values. Restriction ofattribute values to nonnull values isconsistent with the snapshot model andsimplifies the semantics of the algebra. Ifmissing or unknown information needsto be recorded, then nulls are one suchrepresentation, but the algebra shouldnot use nulls as a matter of course.
Critericm 13. Multidimensional time-stamps are supported [Gadia and Yeung1988]. It may be desirable to associate
more than one aspect of time with anobject or relationship being modeled. Be-cause valid time, in particular, is a mul-tifaceted aspect of time, time-stamps of asingle dimension may be inadequate forrecording time in temporal databases.For example, it maybe desirable to recordboth when a train was scheduled to
depart and when it actually departed
[Lindgreen 19821. Hence, a temporal datamodel should support multidimensionaltime-stamps. Note that this criterion dif-fers from the earlier one concerning peri-odicity. Satisfaction of the periodicity
criterion only requires that the algebrasupport structured time-stamps thatrecord a single aspect of time. This crite-rion is relevant only to valid time.
Criterion 14. Reduces to the snapshotalgebra [Snodgrass 1987]. The semanticsof the algebra should be consistent withthe intuitive view of a snapshot relationas a two-dimensional slice of a four-dimensional temporal relation at a validtime tl and transaction time t2.Hence,for all temporal operators, the snapshotrelation obtained by applying a temporaloperator to a temporal relation then tak-ing a snapshot should be equivalent tothe relation obtained by taking a snap-shot of the temporal relation and apply-ing the analogous relational operator tothe resulting snapshot relation. Figure 7illustrates this reduction proof. Infor-mally, this criterion differs from trite -rion 2 (consistent extension of the snap-shot algebra) in that it starts from atemporal relation rather than a snapshotrelation. The concern here is that opera-tions on such relations, which may not betransformations of any snapshot rela-tions, may be irreducible to the snapshotcounterparts.
Criterion 15. Restricts relations to first
normal form. The snapshot algebra owes
much of its simplicity to the restriction ofrelations to first normal form, which re-quires that all attribute values be atomic.Any extension of the snapshot algebra
ACM Computing Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras g 523
should retain this property, unless doingso will compromise other, equally impor-tant properties.
Criterion 16. Supports a three-dimensional conceptual visualization ofhistorical relations and operations [Ariav1986; Ariav and Clifford 1986; Cliffordand Tansel 1985]. Brooks [1956] was thefirst to observe that database relationsrecording changes to real-world objectsover time can be visualized conceptuallyas three-dimensional objects. This spatialmetaphor represents historical relationsas three-dimensional objects, whose firsttwo dimensions are tuple (row) and at-tribute (column) and whose third dimen-sion is valid time. Although these spatialobjects are not true cubes, they do pos-sess geometric properties similar to thoseof cubes.
Example
Consider the historical relation instanceR shown below with attribute-valuetime-stamping containing three tuples.
R= sname course
(“Phil”, {1,3,4}) (“English”, {1, 3, 4})(“Norman”, {1,2}) (“English”, {1,2})(“Norman”, {5,6)) (“Math”, {5,6})
Figure 8 is a graphical representationof this relation. Hence, this representa-tion of R can be viewed as a three-dimensional object with geometricproperties similar to that of a cube. ❑
If we accept this three-dimensionalrepresentation as a user model of histori-cal relations, then each operation definedon historical relations should havean interpretation, consistent with itssemantics, in accordance with this con-ceptual framework. The definitions of op-erations should be consistent with thevisualization that these operations ma-nipulate spatial objects. For example, thedifference operator should take two spa-tial objects (i.e., historical relations) andproduce a third spatial object that repre-sents the volume (i. e., historical informa-tion) present in the first spatial object
but not present in the second spatial ob-ject. Likewise, the Cartesian product op-erator should take two spatial objects andproduce a third spatial object such thateach unit of volume (i. e., historical tuple)in the first spatial object is concatenatedwith a unit of volume in the second spa-tial object to form a unit of volume in athird spatial object. This description ofoperations on historical relations as“volume” operations on spatial objects isconsistent with the semantics of the indi-vidual snapshot algebraic operations as“area” operations on two-dimensionaltables extended to account for the addi-tional dimension represented by validtime.
This criterion subsumes the propertythat the algebra supports historicalqueries concerning valid time [Snodgrass1987]. An algebra supports historical
queries if information valid over achronon can be derived from informationin underlying relations valid over other
chronons, much as the snapshot algebraallows for the derivation of informationabout entities or relationships from in-formation in underlying relations aboutother entities or relationships. Thisimplies that the algebra allows units ofrelated information, possibly valid overdisjoint chronons, to be combined into asingle related unit of information possi-bly valid over some other chronon. Sup-port for such a capability requires thepresence, in the algebra, of a Cartesianproduct or join operator that concate-nates tuples, independent of their validtimes, and preserves, in the resulting tu-ple, the valid-time information for eachof the underlying tuples.
This criterion also subsumes the prop-erty that the algebra supports a valid-time snapshot operator (cf., criterion 19).
This criterion has an important impli-cation: If it is satisfied, then historicaldata loss [McKenzie 1988] is not an oper-ator side effect. Historical data are lost ifan operator removes valid-time informa-tion, contained in underlying relations,from its resulting relation. Data loss be-comes an operator side effect if the re-moval of that valid-time information isnot the purpose of the operator.
ACM Computing Surveys, Vol. 23, No. 4, December 1991
524 9 L. E. McKenzie and R. Snodgrass
/
VALID TIME
d
Figure 8. Graphical representation of a historical relatlon
Example
Suppose a historical algebra allows at-tribute-value time-stamping but requiresclosure under Gadia’s homogeneous re -striction (i. e., the valid times associatedwith each attribute value in a tuple mustbe identical). To ensure closure underCartesian product, assume that Carte -sian product is defined using intersectionsemantics (where the interval of the re-sulting tuple is defined to be the inter-section of the intervals of the underlyingtuples). Now consider the Cartesianproduct of two historical relations withattribute-value time-stamping: relationinstance A, recording when students tookcourses, and relation instance B, record-ing when each student resided in aparticular state.
A= sname course
(“Phil”, {1,3,4]) (“Enghsh”, {1. 3,4})
B= hname state
(“Phil”, {1,2, 3)) (“Kansas”, {1, 2, 3})
AxB= sname course
(c’Phd”, {1, 3}) (“Engllsh”, {1,3})
Criterion 17. Supports basic algebraicequmulences. The following commuta-tive, associative, and distributive equiva-lences, which hold for and in some sensedefine the snapshot operators, should alsohold for their historical counterparts. Asmost optimization strategies for conven-tional relational databases are based on
these equivalences, a temporal algebrathat also satisfies them will be easier tooptimize. Implementation efficiency isarguably the most important feature ofan algebra. If an algebra cannot be im-plemented efficiently, it will have nopractical application for the developmentof temporal DBMSS.
QUR=RUQ
Q~R=R~Q
%(%(R)) = %(%(R))
hname state
(“phiI”, {1, 3}) (“Kansas”, {1, 3})
Note the loss of valid-time information QU(RUS)=(QUR)US
associated with Phil’s enrollment inEnglish at time 4 and his residency in
Q~(Rx S)=(Q~R)~S
Kansas at time 2. n Q;(RUS) -( QXR)U(QXS)
ACM Computmg Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras g 525
Q;(RV+(Qh?~(Qi S)
6F(Q U R) = ciF(Q) () 6F(R)
UF(Q = 1?)= 6F(Q) – %(R)
iix(Q U 1?) ==fix(Q) U ;X(R)
Qfi REQQ(Q~R)
Included in this list are the commuta-tive, associative, and distributive equiva-lences involving only union, difference,and Cartesian product in set theory[Enderton 1977]. Also included in thislist are the nonconditional commutativelaws involving selection and projection
[Smith and Chang 1975; Unman 1988bl.Finally, the definition of the intersectionoperator in terms of the difference opera-tor, which holds for the snapshot algebra,should also apply.
Criterion 18. Supports relations of allfour classes [Snodgrass and Ahn 1985,1986]. Relations may be classified, de-pending on their support for valid timeand transaction time, as either snapshot,rollback, historical, or temporal rela-tions. Any temporal extension of thesnapshot algebra that supports both validtime and transaction time should allowfor relations of all four classes.
Criterion 19. Supports rollback opera-tions [Ben-Zvi 1982; Snodgrass 19871. Inmany database applications, there issometimes a need to pose queries in thecontext of past database states. Hence,the algebra should allow relations to berolled back to past states for query evalu-ation. The algebra should allow a queryunrestricted access to tuples in pastdatabase states. Also, the algebra shouldallow a query access to multiple databasestates rather than access to a singledatabase state. This criterion is relevantonly to transaction time.
This criterion subsumes the propertyof supporting a three-dimensional visual-ization of rollback relations and opera-tions. Incorporating transaction timeshould conceptually add ~ third dimen-sion, just as incorporating valid timedoes. Given the special semantics oftransaction time discussed above and thefact that support for transaction time re-quires that all modifications be treated
physically as appends [Snodgrass andAhn 1986], however, we must interpretthis criterion with care. Specifically, sup-porting a three-dimensional visualizationof rollback relations implies that modifi-cations conceptually make a copy of themost recent snapshot state (a two-dimensional slice), modify it, then ap-pend this to the three-dimensional roll-back relation. Additionally, rollback asan operation should involve extracting atwo-dimensional (snapshot) slice from athree-dimensional rollback relation or athree-dimensional (historical) slice froma four-dimensional temporal relation.
Criterion 20. Supports multiple storedschemas [Ben-Zvi 1982; McKenzie andSnodgrass 19901. Because a relation’sstructure, as well as its contents canchange over time, a data model incorpo-rating transaction time needs to supportmultiple stored schernas and to supportretrieval via rollback of data consistentwith the schema in effect when that datawere originally stored.
Criterion 21. Supports static attributes[Clifford and Tansel 1985; Navathe andAhmed 1987]. The algebra should allowfor attributes whose role in a tuple is notrestricted by time in concert with othertime-varying attributes. This feature al-lows the temporal model to be applied toenvironments in which the values of cer-tain attributes in a tuple are time depen-dent while the values of other attributesin the tuple are not time dependent. Thiscriterion is relevant only to valid time.
Criterion 22. Treats valid and trans-action time orthogonally [Snodgrass andAhn 1985, 19861. Valid tilme and transac-tion time are orthogonal aspects of time.Valid time concerns the time when eventsoccur and relationships exist in the realworld. Transaction time, on the otherhand, concerns the time when a record ofthese events and relationships is storedin a database. Because the two aspects oftime are orthogonal, their treatment alsoshould be orthogonal. The valid time as-signed to an object in the database shouldnot be restricted by or determined by thetransaction time assigned that object.The algebra should allow both retro-active and postactive changes to be
ACM Computing Surveys, Vol 23, No 4, December 1991
526 ● L. E. McKenzie and R. Snodgrass
recorded. Also, operations involving oneaspect of time should not arbitrarilyaffect the other aspect of time.
Criterion 23. Tuples, not attribute val-ues, are time-stamped. Time-stampingtuples, rather than attribute values, sim-plifies the semantics of the algebra. Op-erators need not be defined to handledisjoint attribute time-stamps but rathercan be defined in terms of the con-ventional relational operators usingsnapshot semantics.
Criterion 24. Unique representation foreach temporal relation. In the snapshotmodel, there is a unique representationfor each valid snapshot relation. Like-wise, there should be a unique represen-tation for each valid temporal relation.Failure of an algebra to satisfy this crite-rion can complicate the semantics of theoperators, require inefficient implemen-tations, and possibly restrict the class ofdatabase retrievals that can besupported.
Examples
To illustrate the potential problems ofnonunique representations, consider therelation instances shown below.
Al = sname course
(“Phil”, {1,2}) (“English”, {1,2})(“Phil”, {3,4}) (“English”, {3, 4})
A, = sname course
(“Phil’”, {1,2,3,4}) (“English”, {1,2, 3,4})
El= sname course
(“Phil”, [5,6}) (“Enghsh”, {5,6})
c= sname course
(’<Phil”. /2.3}) (“Enuli~h”, (2.3})
Clearly, the information content of rela-tion instances Al and Az is identical;
the information content of relationinstance B is a continuation of the infor-mation in both Al and Az; and the in-formation content of relation instance Cis a subset of that contained in both Aland Az. What, however, is the semanticsof Al U B? Does the output relation con-tain three tuples, two tuples, or just one
tuple? Is it identical to the result of AzU B? Similarly, what is the semantics ofAl U C? Is the single tuple in C repre-sented in the output relation, or is itabsorbed by the two tuples in Al? Also, if
we want to retrieve the name of all stu-dents who were enrolled in English fromtime 2 to time 4, do we get the sameresult if we apply this query to relationinstances Al and Az? Retrieval of“Phil,” which is the intuitively correctresult when applying this query to Al,requires tuple selection based on infor-mation contained in more than one tuple,a significant departure from the seman-tics of the selection operation in thesnapshot algebra. ❑
Our conclusion is that a selection oper-ator with significantly more complicatedsemantics would be required to produceresults that are correct intuitively. Al-though the above example assumesattribute-value time-stamping, the sameproblems arise with tuple time-stamping.Moreover, the implementation of such aselection operator may be impractical be-cause of the many cases that would haveto be considered during the selectionprocess.
This criterion subsumes the propertythat tuples with all duplicate attributevalues be disallowed, as illustrated inthe above example.
Criterion 25. Unisorted (not multl -sorted). In the snapshot algebra all oper-ators take as input and provide as outputa single sort of object, the snapshot rela-tion. If possible, a temporal extension ofthe snapshot algebra should also beunisorted. A multisorted algebra, such asone with an operation that took a histori-cal relation and a snapshot relation andproduced a historical relation, would in-troduce a degree of complexity in thetemporal model not found in the snap-shot model.
Criterion 26. Update semantics arespecified [Snodgrass 1987]. Concise,mathematical definitions for update op -erations, allowed on a relation’s schemaas well as its content, should be presentand well defined. Without such defini-tions, the meaning of update operations
ACM Computing Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras 9 527
such as tuple insertion and tuple deletionis unclear.
2.2 Properties Not Included
The following properties are either sub-sumed in concert by several criteria justpresented or do not yet have an objectivebasis for being evaluated. Hence, theyare not included as criteria.
The property that the algebra includethe concept of key does not have an objec-tive basis. There have been several defi-nitions of temporal key proposed [Ariav1986; Bhargava and Gadia 1991; Cliffordand Croker 1987; Gadia and Yeung 1988;Navathe and Ahmed 19871; no consensushas yet arisen as to which is the defini-tion. Additionally, although keys are cer-tainly essential during the design of arelational schema, whether snapshotor temporal, it is unclear whether
keys should enter into the definition of arelational algebra. The conventional re-lational algebra does not include the con-cept of key (e. g., the algebra allows theunion operator to be applied to any tworelation instances with identicalschemas, even if the result may violateexternally defined key constraints).Hence, we do not include this property asa criterion.
The property that the algebra shouldserve as a standard for defining temporalcompleteness (i. e., an extension of Codd’snotion of completeness in the snapshotmodel) [Clifford and Tansel 19851 cur-rently has no objective basis for evaluat-ing models si~ce there is no consensusdefinition of temporal completeness, al-though several have been proposed[Croker and Clifford 1989; T_uzhilin andClifford 19901.
If the algebra is closed and supportshistorical queries, it must support non-homogeneous relations (i.e., relationshaving tuples whose attribute values areallowed to have different valid times).Therefore, this property that the algebrasupport nonhomogeneous relations[Gadia 19861 is subsumed by the criteriathat the algebra be an algebra, that thealgebra be a consistent extension of thesnapshot algebra, and support a three-
dimensional view of historical relationsand operators.
The property that the algebra supportstransaction time [Snodgrass and Ahn1986] is subsumed by supports relationsin all four classes, supports schema evo-lution, supports rollback operations,and treats valid and transaction timeorthogonally.
Although some argue that the algebrashould treat valid and transaction timeuniformly [Gadia and Yeung 19881, wefeel that transaction time, being a con-cern of the stored data rather than real-ity, is sufficiently different that it cannotbe treated identically to valid time[McKenzie 1988; McKenzie and Snod-grass 1990]. In particular, uniform treat-ment of valid time and transaction timecannot be extended to include update op -erations. Transaction time has a specificsemantics, very different from that ofvalid time, that requires special han-dling on update. Valid time is specifiedby the user and its value can be derived,via an algebraic expression, from valuesin underlying relations. Transactiontime, however, is simply the time, asmeasured by a system clock, when up-date occurs. Its value cannot be specifiedby the user or derived from underlyingrelations. For update, therefore, it wouldseem impossible to treat valid time andtransaction time uniformly and still re-tain a consistent semantics for transac-tion time.
2.3 Incompatibilities
Not all the criteriaare compatible. Theresets of criteria thatsatisfv. In this section.
discussed aboveare certain sub-no algebra canwe examine the.
incompatibilities among criteria.The criterion that the algebra support
a three-dimensional visualization (trite -rion 16) is incompatible with the criteriathat
o Tuples, not attribute values, be time-stamped (23)
@ All attribute values in a tuple be de-fined for the same interval(s) (1)
ACM Computing Surveys,Vol. 23, No. 4, December1991
528 e L. E. McKenzie and 1?. Snodgrass
“ The equivalence Q ~ (R ~ S) = (Q ~ Example
R) ~ (Q x S) hold (17). (The remaining Consider the following single-tuple his-equivalences do not conflict. ) torical relations with attribute-value
First, no algebra can support a three-dimensional model (16) and also time-
stamp tuples (23). For the algebra tosupport such a model, its Cartesian prod-uct or join operator must concatenatetuples independent of their valid timesand preserve, in the resulting tuple, thevalid-time information for each of theunderlying tuples. The alternative is his-torical data loss (c f., the example in cri-terion 16). Yet, if the Cartesian productoperator assigns different time-stamps toattribute values in its output tuples, thecriterion that tuples, not attribute val-ues, be time-stamped cannot be satisfied.
Ax(BJ C’)= sname
time-stamping.
A= sname course
(“Phil”, {1,2,3)) (“Enghsh”, {1,2, 3})
B= hname state
(“Norman”, {1,2}) (“Iowa”, {1,2})
c= hname state
(“Norman”, {2}) (“Iowa”. {2})
Figure 9 illustrates the representationof historical relations as spatial objectsin calculating A x (B ~ C) and (A x B)~ (A x C), respectively. The results ofthese calculations are shown below.
course hname state
(“Phil”, {1,2,3}) (“Math”, [1,2,3}) (“Norman”, {1}) ($’Iowa”, {1])
(Ax B) Q(Ax C)= sname course hnane state
(“Phd”, @) (“Math”, ~) (’cNorman”, {1}) (“Iowa”, {1})
Second, no algebra can support athree-dimensional model (16) and also re-quire that all attribute values in a tuplebe defined for the same interval(s) (l). Ifthe Cartesian product operator requiredthat all attribute values in a resultingtuple be defined over the same interval(s),arbitrary valid-time information associ-ated with the attribute values of the un-derlying tuples could not be preserved,and the criterion that the algebra sup -port a three-dimensional model could notbe satisfied. Yet, if the Cartesian productoperator preserved the valid-time infor-mation for the attribute values of theunderlying tuples in the resulting tuple,attribute values in the resulting tuplewould be defined for different intervalsand the criterion that all attribute val-ues in a tuple be defined for the sameinterval(s) could not be satisfied.
Third, no algebra can support a three-dimensional model (16) and also supportthe distributive property of Cartesianproduct over difference (17).
Note that the results are different, con-trary to the standard relational model
where the results are always identical.
n
This example shows that the criterionthat the distributive property of Carte-sian product over difference hold is in-compatible with the criterion that thealgebra support a three-dimensionalvisualization (16).
There are two other incompatibilities
among the criteria. First, the criterionthat each set of legal tuples be a legalrelation (5) is incompatible with the cri-terion that there be a unique representa-tion for each relation (24). If every set oflegal tuples were allowed to be a legalrelation, the algebra could not have aunique representation for each relation.
Example
The following are only two of severalequivalent representations of a rela-
tion instance A over the attributes{hname, state} and attribute-value time-stamping.
ACM Computmg Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras e 529
&iiiiii7’””B“C A A;(B=C)
........ ... . .. ... .......
Fp[ggye
‘-”-”-”--”-”’’’’’’’”-a~d~zz:y=.
TIME
Figure 9. Ax(B~C) and(A~B)~(A~C)
Al = hname state To define difference so that A ~ B can
(“Norman”, {1, 2,3, 4}) (“Utah”, {1, 2,3, 4}) be calculated consistent with the user
AZ =model of historical operators as “volume”
lmame state operators on spatial objects, the algebra
(“Norman”, {1,2}) (“Utah”, {1,2}) must allow tuples with duplicate(“Norman”, {3, 4}) (“Utah”, {3,4}) attribute values in a relation
Yet, if the algebra allowed only one ofthese representations, say Al, to ensurethat there be a unique representation foreach relation, there would be sets of legaltuples (e.g., AZ) that would not be legalrelatiom3. ❑
Finally, the criteria that the algebrarestrict relations to first normal form(15), support a three-dimensional visual-ization (16), and have a unique represen-tation for each historical relation (24) areincompatible. An algebra can be defin-ed that satisfies any two of these crite-ria, but no algebra can be defined thatsatisfies all three criteria.
Consider the following two single-tuplerelation instances.
A= hname state
C’Phil”, {1,2,3}) (“Kansas”, {1, 2, 3})
A~B= hname state
(“Phil”, {1,2}) (“Kansas”, {1,2})(“Phil”, {3,4}) (“Kansas”, {3, 4})
(thereby violating the criterion that therebe a unique representation) or allow thetime-stamp associated with a tuple to benonatomic (i. e., a set of intervals ratherthan a single interval).
A~B= hname state
(“Phil”, [1,3}) (’Kansas”, {1, 3})
Thus, to support a three-dimensionalvisualization and disallow tuples withduplicate attribute values, which is im-plied by the criterion that the algebrahave a unique representation for eachhistorical relation (if attribute values aretime-stamped), the algebra must allownon-first normal form relations.
B= Imame state The five incompatibilities described
(“Phil”, {2]) (“Kansas”, {2})above all involve at least one of thesetwo criteria.
ACM Computing Surveys, Vol 23, No 4, December 1991
530 e L. E. McKenzie and R. Snodgrass
Supports a three-dimensional view of historical states and operations?No Yes
All attributes In a tuple must not bedefined over the same interval(s)
No restrictions The distributive property of CartesIanproduct over difference cannot hold
Tuple time stampmg cannot be used
All attributes in a tuple must not bedefined over the same Interval(s)
The distributive property of Cartesianproduct over difference cannot hold
All sets of legal tuples cannot belegal relations Tuple time stampmg cannot be used.
All sets of legal tuples cannot belegal relations
Relatlon states cannot be restrictedto first-normal-form
Figure 10. Incompatibilities among criteria
e Supports a three-dimensional visual-ization (16)
e Unique representation for each histori-cal relation (24)
Figure 10 summarizes the effect satisfac-tion of these two criteria has on the alge-bra’s ability to satisfy other criteria. Notethat if the algebra satisfies neither ofthese criteria, it can satisfy all the othercriteria. If, however, the algebra satisfiesboth of these criteria, there are five crite-ria that it cannot satisfy. Because noalgebra can satisfy all seven of these cri-teria, we term these criteria conflictingcriteria.
3. EVALUATIC)N
In this section we evaluate the 12 alge-bras reviewed in Section 1.2 against thecriteria presented in the previous sec-tion. Table 3 summarizes the evaluationof these 12 proposals against the criteria.Note that Tuzhilin’s algebras are not tiedto a particular temporal data model. Hisalgebras are meant ordy to provide anobjective measure of the expressive powerof algebras and calculi. Hence, many ofthe criteria can be satisfied or not satis-
fied depending on the data model chosen.
For such criteria, we simply indicate “notapplicable. ”
3.1 Conflicting Criteria
We first evaluate the algebras againstthe seven criteria introduced in the pre-vious section that are not all compatible.
Criterion 1. All attribute values in atuple are defined for the same interval(s).Gadia’s homogeneous model and thosethat time-stamp tuples satisfy this crite-rion. In Tuzhilin’s algebras, representa-tion restrictions are not imposed on baserelations. All-derived relations will, how-ever, associate identical intervals withall attribute values. The other algebrasallow attribute time-stamps in a tuple tobe disjoint.
Criterion 5. Each set of legal tuples isa legal relation. The algebras proposedby Ben-Zvi, Gadia, Jones, Lorentzos,Sarda, and Tansel all satisfy this crite-rion. Clifford’s algebra fails to satisfythis criterion because a relation may notcontain two tuples that match on thevalues of the key attributes at the samechronon. Yeung’s algebra, likewise, failsto satisfy this criterion: It does not allow
ACM Computmg Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras * 531
a relation to contain two tuples that Lorentzos’ algebra fails to satisfy thismatch values on the key attributes. In criterion when relations have multipleTuzhilin’s algebras, representation re - attribute time-stamps.striations are not imposed. Finally, the
Examplealgebras proposed by McKenzie, Navatheand Sadeghi also fail to satisfy this crite- Consider the following single-tuple rela-
rion. Their algebras require that tuples tion instances legal in Lorentzos’
with identical values for the explicit algebra.
A= sname n-start n-stop course c-start c-stop
“Marilyn” 2 4 “Math” 2 4
B= sname n-start n-stop course c-start c-stop
“Marilyn” 1 3 “Math” 1 3
attributes (termed value-equivalent) becoalesced; hence, tuples with identicalvalues for the explicit attributes can nei-ther overlap nor be adjacent in time.
Criterion 15. Restricts relations tofirst-normal form. The algebras proposedby Ben-Zvi, Jones, Lorentzos, Navathe,and Sadeghi restrict relations to firstnormal form. In Tuzhilin’s algebras, rep-resentation restrictions are not imposed,The other algebras all fail to satisfy thiscriterion since they allow set-valued at-tributes, or set-valued time-stamps, orboth.
Criterion 16. Supports a three-dimen-sional visualization of historical relationsand operations. McKenzie’s algebra sup -ports the user-oriented visualization of ahistorical relation as a three-dimensionalobject in that it supports nonhomoge -neous attribute-value time-stamping andavoids historical data loss as an opera-tor side effect. Operators in Clifford’salgebra, with the exception of the joinoperators, do not satisfy this criterion.Although lifespans are associated withtuples, Cartesian product is defined toprevent historical data loss as an opera-
In Lorentzos’ algebra, historical differ-ence is defined in terms of the Unfold, setdifference, and Fold operators. If we un-fold both A and B, first on the n at-tribute and then on the c attribute, we
get the following relations:
A’ = sname n-time course c-time
“Marilyn” 2 “Math” 2“Marilyn” 2 “Math” 3“Marilyn” 2 “Math” 4“Marilyn” 3 “Math” 2
“Marilyn” 4 “Math” 4
BI = sname n-time course c-time
“Marilyn” 1 “Math” 1
“Marilyn” 3 “Math” 3
We then apply set difference to the un-folded relations, with the following re-sults:
A–B’= sname n-time course c-time
“Marilyn” 2 “Math” 4“Marilyn” 3 “Math” 5“Marilyn” 4 “Math” 2“Marilyn” 4 “Math” 3“Marilyn” 4 “Math” 4
If we then fold the result, again first on nand then on c, we get
A~B= sname n-start n-stop course c-start c-stop
“Marilyn” 2 4 “Math” 4 4“Marilyn” 4 4 “Math” 2 3
tor side effect through the introduction of This result is inconsistent with the visu -
nulls into the Cartesian product’s output alization of historical relations as three-
tuples. It is unclear whether Yeung’s al- dimensional objects and operations on
gebra and Tansel’s algebra satisfy this historical relations as “volume” opera-criterion since all operations are not de- tions on spatial objects, as shown in
fined formally. Figure 11. ❑
ACM Computing Surveys,Vol. 23, No. 4, December1991
532 “ L. E. McKenzie and R. Snodgrass
Table 3. Evaluation of Algebras against Crlterlaa
Ben-Zvi Clifford Gadia Yeung Jones Lorentzos
Conflicting CrzterLa1 All attr~butes in a tuple are defined
for same interval(s)5 Each set of legal tuples is a legal relation
15. Restricts relations to first normal form16 Supports a 3-D view of historical
state and operations17 Supports basic algebraic equivalences23 Tuples are time-stamped24. Unique representation for each temporal
relationCornputible Criteria
2. Consistent extension of the snapshot algebra3 Data periodicity is supported4. Each collection of legal attribute
values is a legal tuple6. Formal semantics are well defined7. Has the expressive power of a
temporal calculus8. Includes aggregates9. Incremental semantics defined
10. Intersection, (3-~oin, natural join, andquotient are defined
11, Is, in fact, an algebra12. Model doesn’t requu-e null attribute values13 Multidimensional time-stamps are supported14. Reduces to the snapshot algebra18 Supports relations of all four classes19. Supports rollback operations20 Supports multiple stored schemas21 Supports static attributes22 Treats valid time and transaction
time orthogonally25. Unisorted (not multisorted)26 Update semantics are specified
The algebras proposed by Ben-Zvi,Gadia, Jones, IYavathe, Sadeghi, and‘Tuzhilin also fail to satisfy this criterion.None of these algebras provides a Carte-sian product operator that allows for theconcatenation of two tuples containingarbitrary historical information withoutthe 10SS of historical information. InGadia’s homogeneous model, attributevalues are time-stamped, but the time-stamps of individual attribute values ineach tuple are required to be identical.This requirement necessitates the defini-tion of Cartesian product using intersec-tion semantics. In 13en-Zvi’s algebra, tu-ples rather than attribute values aretime-stamped, and a Time Join operatoris defined using intersection semantics.Likewise, in iNavathe’s algebra, tuplesrather than attribute values are time-
stamped, and two operators, TCJOIN and
TCNJOIN, are defined using intersec-tion semantics. Navathe also defines twooperators, TJOIN and TNJOIN, that al-
low for the concatenation of tuples with-out loss of historical information. Theseoperators, however, are not closed; they
uroduce tuDles with two time-stam~s. In~ones’s alg;bra, tuples are time-stamped,and Cartesian m-oduct o~erators are de-fined using bo<h intersection and unionsemantics. Finally, in Sadeghi’s algebra,tuples are time-stamped, and the join andCartesian product operators are both de-fined using intersection semantics.
Example
Consider the following single-tuple rela-tion instances:
ACM Computing Surveys, Vol 23, No. 4, December 1991
Evaluation of Temporal Algebras 9 533
Table 3. (Continued)
McKenzie Navathe Sadeghi Sarda Tansel Tuzhilin
1.
5.15.
16.
17,23,24,
2.3.4.
6.7.
8.
9.10
11.1213.
14,1819.20.21.22.
25.
Conflicting CriteriaAll attributes in a tuple are defined
for same interval(s)Each set of legal tuples is a legal relationRestricts relations to first normal formSupports a 3-D view of historical
states and operationsSupports basic algebraic equivalencesTuples are time-stampedUnique representation for each temporal
relationCompatible Cr~ter~a
Consistent extension of the snapshot algebraData periodicity is supportedEach collection of legal attribute
values is a legal tupleFormal semantics are well definedHas the expressive power of a
temporal calculusIncludes aggregatesIncremental semantics definedIntersection, e-join, natural join, and
quotient are definedIs, in fact, an algebraModel doesn’t require null attribute valuesMultidimensional time-stamps are
supportedReduces to the snapshot algebraSupports relations of all four classesSupports rollback operationsSupports multiple stored schemasSupports static attributesTreats valid time and transaction
time orthogonallyUnisorted (not multisorted)
26. Update semantics are specified
ad, Satisfies criterion; P, partial compliance (see text); A, criterion not satisfied; N.A , not applicable;?, not specified in papers; <1, see text.
AA
;:~g(;
--------------------------------------
MAFJLYN MATH
VALID TIME
Figure 11. Conceptual view of the difference operator applied to historical relations
ACM Computing Surveys, Vol 23, No 4, December 1991
534 “ L. E. McKenzie and R. Snodgrass
Figure 12. Cartesian product of historical relations,
A= sname course
(“Marilyn”, {2, 3,4}) (“Math”, {2, 3,4})
B= hname state
(“Mardyn”, {1,2, 3}) (Texas, {1,2,3})
Using intersection semantics, the Carte-sian operator produces the followingrelation:
Cartesian product over difference. All theequivalences, except the distributiveproperty of Cartesian product over differ-ence, also hold for both Clifford’s andMcKenzie’s algebras. Tuzhilin’s algebrassatisfy this criterion. Tansel’s algebradoes not support the commutative prop-erty of selection with union and differ-ence. It is unclear whether Tansel’salgebra satisfies the other equivalence
AxB= sname course hname state
(“Marilyn”, {2,3}) (“Math”, {2,3]) (“Marilyn”, {2, 3}) (Texas, {2, 3))
If, however, Cartesian product is repre- since union and difference are not de-sented conceptually as a “volume” oper - fined formally. Similarly, it is unclearation on spatial objects, we would expect whether all the equivalences hold for
AxB= sname course hname state
(“Marilyn”, {2, 3,4}) (“Math”, [2,3,4}) (“Marilyn”, {1,2, 3}) (Texas, {1,2, 3})
as illustrated in Figure 12. n
Sarda, in addition to defining a Carte-sian product operator using intersectionsemantics, allows the relational Carte-sian product operator to be applied tohistorical relations. Although tuples inthe result retain the time-stamps of theirunderlying tuples, the result is not a his-torical relation. Its semantics are leftunspecified.
Criterion 17. Supports basic alge-braic equivalences. Ben-Zvi’s, Gadia’s,Lorentzos’, Sadeghi’s, and Tuzhilin’s al-gebras satisfy this criterion. Jones’ alge-bra supports the equivalences, with oneexception. The Cartesian product opera-tor defined using union semantics fails tosupport the distributive property of
—Yeung’s, Navathe’s, and Sarda’s algebras.
Criterion 23. Tuples, not attribute val-ues, are time-stamped. Ben-Zvi, Jones,Navathe, Sadeghi, and Sarda all time-stamp tuples. Clifford also time-stampstuples but requires that the partial func-tion from the time domain onto a valuedomain, representing an attribute’svalue, be further restricted to the at-tribute’s time-stamp in the relationschema. Tuzhilin does not impose representation restrictions. The otheralgebras all time-stamp attribute values.
Criterion 24. Unique representation foreach historical relation. Yeung’s algebrasupports a unique representation for eachtemporal relation because it does not al-low two tuples to match values on thekey attributes. Because McKenzie’s alge-
ACM Computing Surveys. Vol. 23, No 4, December 1991
Evaluation of Temporal Algebras ● 535
bra allows set-valued time-stamps and
disallows value-equivalent tuples, it too
supports a unique representation for each
temporal relation. Because Navathe and
Sadeghi require that value-equivalent
tuples be coalesced, their algebras also
satisfy this criterion. In Tuzhilin’s alge -
bras, representation restrictions are not
imposed. None of the other algebras sat-
isfy this criterion. They all allow multi-
ple representations of identical temporal
information within a relation, usually by
not requiring value-equivalent tuples to
be coalesced. Note that Clifford’s algebra
fails to satisfy this criterion because it
only requires that no two tuples in a
relation match values on the key at-
tributes at the same chronon; a relation
may contain value-equivalent tuples,
even value-equivalent tuples adjacent in
time, as long as they do not overlap in
time. Hence, there are still multiple ways
to represent a historical relation.
3.2 Compatible Criteria
we now evaluate the algebras against
the remaining 19 criteria. Because these
criteria are compatible, there is no a pri-
ori reason why an algebra cannot be
defined that satisfies all these criteria.
Criterion 2. Consistent extension of thesnapshot algebra. The algebras proposed
by Ben-Zvi, Clifford, Gadia, Jones,
Lorentzos, McKenzie, Sadeghi, and
Tuzhilin satisfy this criterion. Although
formal definitions for all operators are
not provided for the other algebras, they
too are likely to satisfy this criterion.
Criterion 3. Data periodicity is sup-ported. Only Lorentzos’ algebra satisfies
this criterion. His algebra allows multi-
ple time-stamps of nested granularity,
which can be used to specify periodicity.
Criterion 4. Each collection of legalattribute values is a legal tuple. Tansel’s
and Yeung’s algebras time-stamp at-
tribute values without imposing any
inter-attribute dependence constraints.
Sarda’s algebra encodes a tuple’s time-
stamp within a single attribute value
without imposing any inter-attribute de-
pendence constraints. In Tuzhilin’s alge -
bras, representation restrictions are not
imposed.
The algebras proposed by Ben-Zvi,
Jones, Navathe, and Sadeghi fail to sat-isfy this criterion because they use im-
plicit attributes to specify the end points
of a tuple’s time-stamp, requiring that
the value of the start-time attribute beless than (or s) the value of the stop-
time attribute in all valid tuples. Lorent-
ZOS’ algebra also requires that the values
of attributes representing the boundary
points of intervals be ordered. Clifford’s
algebra does not satisfy this criterion be-cause the value of each attribute in atuple is defined as a partial function from
the time domain onto a value domain,
where the function is restricted to times
in the intersection of the tuple’s time-
stamp and the attribute’s time-stamp in
the relation schema. Hence, the
interval(s) for which an attribute value
is defined depends on both the tuple’s
time-stamp and the attribute’s time-
stamp in the relation schema. Gadia’s
homogeneous model fails to satisfy this
criterion because all attribute values in a
tuple are required to be functions on the
same temporal element. Yeung’s algebra
also fails to satisfy this criterion because
relations are restricted to nonnull tuples.
Finally, McKenzie’s algebra fails to sat-
isfy this criterion because it does not
allow the time-stamps of all attribute
values in a tuple to be empty.
Criterion 6. Formal semantics are welldefined. Clifford, Gadia, Lorentzos,
McKenzie and Tuzhilin provide a formal
semantics for their algebras. Jones, how-
ever, provides no formal semantics for
the time-oriented operations in LEGOL;
she provides only a brief summary of
time-oriented operations available in the
language, along with examples illustrat -
ing the use of some of these operations.
Ben-Zvi and Tansel provide formal se-
mantics for their algebras but provide
incomplete definitions for certain opera-
tors. For example, Ben-Zvi’s definition of
the difference operator does not include adefinition of the Effective-Time-Start and
Effective-Time-End of tuples in the re-
sulting relation, and Tansel does not
ACM Computing Surveys, Vol. 23, No. 4, December 1991
536 “ L. E. McKenzie and R. Snodgrass
provide formal definitions for his histori-
cal union and difference operators. Like -
wise, Yeung does not provide formal
definitions for the historical difference
and intersection operators, Navathe pro-
vides formal semantics for three new his-torical selection and four new historical
join operators. He retains the five basic
snapshot operators, although his model
requires that value-equivalent tuples be
coalesced. The semantics of these opera-
tors are left unspecified. Sadeghi also
requires that value-equivalent tuples be
coalesced. He provides formal semantics
for all operators, but the semantics of
some operators (e. g., union) do not pre-
serve this value-equivalence property of
historical relations, Sarda provides for-
mal semantics for five new historical op-
erators and selection and projection when
applied to historical relations. Although
he allows the Cartesian product operator
to be applied to historical relations, the
result is not a historical relation. He also
does not provide formal definitions for
Cartesian product, historical union, and
difference.
Criterion 7. Has the expressive powerof a historical or temporal calculus.Cladia has defined an equivalent calculus
for his homogeneous model. McKenzie’s
algebra has the expressive power of the
TQuel [Snodgrass 19871 calculus
[McKenzie 19881. Likewise, Tansel has
defined an equivalent calculus for his
algebra [Tansel and Arkun 1985]. Ben-
Zvi has augmented the SQL query lan-
guage with a Time-View operator and
has shown that the resulting language
has expressive power equivalent to that
of his algebra [Ben-Zvi 19821. Rather than
modify the semantics of the SQL query
language to handle the temporal dimen-
sion, Ben-Zvi uses the Time-View oper-
ator as a temporal preprocessor toconstruct snapshot relations that canthen be manipulated the same way asany other snapshot relations. Yeung has
defined an equivalent calculus for anearlier version of his algebra [Yeung
1986]. Navathe has defined the historical
query language TSQL [Navathe and
Ahmed 1987], which is a superset of SQL,
for use in his model. He has not shown,
however, that his algebra has the expres-
sive power of TSQL. Sadeghi has defined
a historical query language HQL as anextension of the query language DEAL
[Sadeghi 19871 and has shown how tomap queries in HQL onto expressions inhis algebra. Sarda has extended SQL tohandle historical queries and has shown
how to map sample queries in this lan-
guage onto expressions in his algebra
[Sarda 19901. Tuzhilin uses a temporal
logic [Rescher and Urquhart 19711, TC,which he proves is equivalent in expres-
sive power to Tuzhilin’s TA temporal al-gebra, and a somewhat less expressive
temporal logic, TC’, which he proves is
equivalent to his TA’. The other algebras
have not been proven to have equivalent
expressive power of a historical or tempo-
ral calculus.
Criterion 8. Includes aggregates.Ben-Zvi and McKenzie define historical
aggregate operators formally as part of
their algebras. Tansel also defines his-
torical aggregate functions in his algebra
in terms of a new operator, termed enu-meration, and an aggregate formulation
operator [Tansel 1987]. Aggregate func-
tions, defined for the snapshot algebra,
can be used to compute historical aggre-
gates in Lorentzos’ algebra. The algebraproposed by Jones includes aggregate op-erators, but these operators are not de-fined formally. Although Gadia does notinclude aggregates in his models, he doesintroduce “historical navigation” opera-tors (e. g., First), which act similarly toother historically oriented aggregates.The other algebras do not include anyaggregate operators.
Criterion 9. Incremental semantics aredefined. An incremental version of alloperators in McKenzie’s algebra has beendefined [McKenzie 1988]. An incremen-tal version of none of the other algebrasis provided.
Criterion 10. Intersection, @join, nat-ural join, and quotient are defined. His-torical versions of these four operatorsare defined for McKenzie’s algebra. Ben-Zvi defines a join operator, and Clifforddefines intersection, @-join, and natural
ACM Computing Surveys, Vol 23, No 4, December 1991
Evaluation of Temporal Algebras ● 537
join operators. Gadia defines intersec-tion, ~-join, and natural join in his ho-mogeneous model. Yeung defines all fouroperators in an earlier version of his al-gebra [Yeung 1986], but they are notdefined in the later version [Gadia andYeung 1988]. Finally, Navathe defineshistorical versions of join and naturaljoin. None of the other algebras defineshistorical versions of these operators.
Criterion 11. Is, in fact, an algebra.Clifford’s algebra fails to satisfy this cri-terion because it is not closed underunion, difference, or intersection. Thehistorical versions of these binary opera-tors are defined for two relations only ifthey are merge compatible (i.e., tuplesfrom the two relations that match on thevalues of the key attributes at somechronon must also match on all theirattribute values at each chronon in theintersection of their lifespans). Likewise,Yeung’s algebra does not satisfy this cri-terion because it is not closed underunion. The union of two relation in-stances is undefined if there are tuples inthe instances that match on the values ofthe key attributes but have different val-ues at some time for some attribute. It isunclear whether Sarda’s proposal satis-fies the closure property since Cartesianproduct of historical relations, althoughallowed, produces a result that is not ahistorical relation. Its semantics, how-ever, are left unspecified. Sadeghi doesnot specify the semantics of the WHENoperator or indicate whether this opera-tor is closed. Two of Navathe’s operators,TJOIN and TNJOIN, are not closed.Each of the other proposals satisfies thiscriterion.
Criterion 12. Model does not requirenull attribute values. Clifford’s algebrafails to satisfy this criterion. The Carte-sian product operator assigns null valuesto attributes in an output tuple for eachchronon that is in the lifespan of theoutput tuple but not in the lifespan of theinput tuple ~smeiated with that ~t-tribute value. The other algebras beingevaluated all satisfy this criterion.
Criterion 13. Multidimensional time-stamps are supported. Only Yeung’s al-
gebra satisfies this criterion. InTuzhilin’s algebras, representation re-strictions are not imposed. None ofthe other algebras supports multi-dimensional time-stamps. Extension ofMcKenzie’s algebra to support multidi-mensional time-stamps, however, hasbeen considered [iMcKenzie 1988].
Criterion 14. Reduces to the snapshotalgebra. Gadia’s homogeneous model sat-isfies this criterion; operators are definedusing a snapshot semantics thus guaran-teeing that the algebra reduces to thesnapshot algebra. Likewise, the descrip-tions of the algebras proposed by Ben-Zvi,Jones, and Tuzhilin imply that the oper-ators are defined using snapshot seman-tics. Because Navathe, Sadeghi, andSarda all assume tuple time-stamping,their algebras also satisfy this criterion.Although formal definitions have notbeen provided for all operators in Yeung’salgebra, it can satisfy this criterion onlythrough the introduction of distinguishednull’s when taking snapshots. Becausethe algebras of McKenzie, Tansel, andLorentzos allow nonhomogeneous at-tribute time-stamps, they also satisfy thiscriterion only through the introduction ofdistinguished null’s when taking snap-shots. Likewise, because Clifford does notrequire that all attribute values in a tu-ple be defined for the same lifespan (i.e.,an attribute’s value in a tuple is speci-fied only for chronons in the intersectionof the tuple’s lifespan and the attribute’slifespan in the relational schema), hisalgebra also satisfies this criterion onlythrough the introduction of distinguishednull’s when taking snapshots.
Criterion 18. Supports relations of allfour classes. Yeung’s algebra, because itallows multidimensional time-stamps,can support relations of all four classes.McKenzie’s algebra also satisfies this cri-terion. Ben-Zvi’s model, although it sup-ports both valid time and transactiontime, can support rollback and historicalrelation~ only by embedding them intemporal relations. The other algebras,since they do not support transac-tion time, cannot support rollback ortemporal relations.
ACM Computing Surveys, Vol 23, No. 4, December 1991
538 “ L. E. McKenzie and R. Snodgrass
Criterion 19. Supports rollback opera-tions. McKenzie’s algebra satisfies thiscriterion. The rollback operators allowqueries to be posed on one or more arbi-trary relations. Yeung’s algebra also sat-isfies this criterion; transaction time istreated simply as another dimension in amultidimensional temporal element.Ben-Zvi’s algebra, although it allowsrollback, achieves only partial satisfac-tion of this criterion because it requiresthat the tuples participating in a queryall have a specified valid time in com-mon. All operations in Ben-Zvi’s algebraare defined in terms of a transaction timetband a valid time t,.During expressionevaluation, rollback occurs to the rela-tion at t,,but only tuples valid at t.areaccessed. None of the other algebrassupports rollback operations.
Criterion 20. Supports multiple storedschemas. McKenzie’s algebra satisfiesthis criterion. Ben-Zvi, while describing
an approach for representing an evolvingschema as a temporal relation, does notinclude provisions for schema evolutionin the formal semantics of his algebra.Hence, his algebra fails to satisfy thiscriterion. Yeung, although supportingtransaction time, does not address theproblem of schema evolution. An ap-proach for handling schema changes inNavathe’s formalization has been devel-oped [Martin et al. 19871, but the algebrawas not extended to support schema evo-lution. Because the other algebras do notsupport transaction time, they too fail tosatisfy this criterion.
Criterion 21. Supports static at-tributes. Lorentzos’, Navathe’s,Sadeghi’s, and Tansel’s algebras satisfythis criterion by allowing both time-dependent and non-time-dependentattributes. McKenzie’s and Yeung’salgebras also support static attributes. Inthese two algebras, the time-stamp of anattribute value can be defined indepen-dently of the time-stamps of any of theother attribute values in a tuple. A staticattribute would be represented inMcKenzie’s algebra as an attribute as-signed the entire time domain. Clifford’salgebra fails to satisfy this criterion be-cause an attribute’s value in a tuple can-
not be specified for chronons that are notin the tuple’s lifespan. In Tuzhilin’s alge-bras, representation restrictions are notimposed. The other four algebras allrequire that the same valid time be asso-ciated with all attributes in a tuple;therefore, none of these algebras can sup-port static and time-dependent attributeswithin the same tuple.
Criterion 22. Treats valid and trans-action time orthogonally. Ben-Zvi’s andYeung’s algebras satisfy this criterion:They support retroactive and postactivechanges and allow independent assign-ments of valid time and transaction timewithout restrictions. McKenzie’s algebraimposes the restriction that rollback beperformed first, followed by historical se-lection, on temporal relations. The otheralgebras all fail to satisfy this criterionbecause they do not support transactiontime.
Criterion 25. Unlsorted (not multi-sorted). The algebras proposed by Jones,Lorentzos, Sadeghi, Tansel, Yeung, andTuzhilin are unisorted in that they de-fine only one object sort. All the otheralgebras are multisorted. McKenzie de-fines algebraic operators on snapshot re-lations and historical relations. Gadia’shomogeneous model is a multisorted al-gebra; its sorts are historical relationsand temporal expressions. Clifford de-fines a multisorted algebra whose sortsare historical relations and lifespans.Ben-Zvi allows both snapshot and tempo-ral relations, whereas Navathe allowsboth snapshot and historical relations.Finally, Sarda defines a projection opera-tor that is allowed to map a historicalrelation instance onto a snapshot
relation instance.Criterion 26. Update semantics are
specified. McKenzie>a proposal satisfiesthis criterion. Ben-Zvi defines the se-mantics of tuple insertion, deletion, andmodification but does not extend the for-malization to include schema evolution.The other proposals do not consider up-date semantics in their formalizations.
3.3 Criteria Metaproperties
In Section 2.2, we identified several cri-teria that were subsumed by other, more
ACM Computmg Surveys, Vol. 23, No 4, December 1991
Evaluation of Temporal Algebras “ 539
important criteria. It is desirable thatthe remaining criteria are independentin that no combination of criteria (logi-
cally) imply another criteria. Given thenumber of criteria, a complete analysis isinfeasible. Instead, we have taken a moreempirical approach, examining whetherany (single) criterion logically impliesany other criterion, as indicated bythe satisfaction or unsatisfaction by thealgebras surveyed here.
First, to detect criteria that were logi-cally equivalent to other criteria, weattempted to identify, for each pair ofcriteria, an algebra in which the two cri-teria differ, that is, where one was satis-fied while the other was not satisfied.The presence of such an algebra provesby example that the two criteria are notlogically equivalent; the absence of suchan algebra suggests a logical relation-ship between the pair. Seventeen out of atotal of 325 pairs did not have such analgebra. Eleven of these pairs were elim-inated because the criteria were obvi-
ously not related. The other six have apartial counterexample in that for eachpair there exists an algebra in which oneof the criteria was satisfied and the otherwas partially not satisfied.
Second, to detect criteria that were“negatively equivalent” (i. e., where thesatisfaction of one criterion logicallyimplies that the other criterion cannotpossibly be satisfied), we attempted toidentify, for each pair of criteria, an alge -bra in which the two criteria agree, thatis, where both were either satisfied orwere not satisfied. As before, the pres-ence of such an algebra provides a proofby example that the two criteria are notnegatively equivalent; the absence ofsuch an algebra indicates the possibilityof negative equivalence. Such an algebrawas identified for all but four out of 325possible pairs. Concerning consistent ex-tension of the snapshot algebra (2) andeach collection of legal attribute values isa legal tuple (4), it appears that Sarda’s,Tansel’s, and Yeung’s algebras satisfyboth criteria, although a definitive state-ment must await formal definitions forall operators. Since there is little experi-ence with multidimensional time-stamps
(13), its observed negative correlationwith two other criteria is uncertain. Fi-nally, one pair was rejected because thecriteria were obviously not related.
In Section 2.3, we argued that seven ofthe criteria, labeled conflicting, were notmutually satisfiable. We conjecture thatthe remaining criteria are compatible inthat it is theoretically possible for all tobe satisfied by an algebra. As a partialtest of this conjecture, we consideredpairwise satisfiability. Specifically, weattempted to identify, for each pair ofcompatible criteria, an algebra that si-multaneously satisfied both. The absenceof such an algebra indicates that perhapsthe two criteria cannot be simultane-ously satisfied and hence are incompati-ble. Out of 171 pairs possible, 27 pairssuggested incompatibilities, of which 14were rejected on first principles. Dataperiodicity (3) appears to be incompatiblewith five other criteria; insufficient experience with this aspect prevents a defi-nite characterization. The same holds foreach collection of legal attribute values isa legal tuple (4) (four criteria) and multi-dimensional time-stamps (13) (also fourcriteria).
Our conclusion from this informalanalysis is that, with the exception ofthree criteria [ data periodicity (3), eachcollection of legal attribute values is alegal tuple (4), and multidimensionaltime-stamps (13)], for which there is littleexperience (each is satisfied by at mosttwo algebras), the criteria are not pair-wise logically equivalent (in either direc-tion), and the compatible criteria are notpairwise incompatible.
4. SUMMARY
In this paper, we examined 12 temporalalgebras, considering the objects eachdefines and the operations on those ob-jects each provides. We identified sevenconflicting criteria that cannot simul-taneously hold in any algebra and 19compatible criteria. We then evaluatedthe algebras on these criteria. As wasshown in Figure 10, the subset of con-flicting criteria that an algebra can sat-isfy is necessarily dependent on whether
ACM Computing Surveys, Vol. 23, No 4, December 1991
540 “ L. E. McKenzie and R. Snodgrass
Supports a three-dimensional view of historical states and operationsNo
Ben-Zvl
Gadla
Jones
Lorentzos
Sarda.“
z Tuzhillng
Yes
Clifford
Tansel
I
NavatheYeung
SadeghlMcKenzie
Tuzhdin
Figure 13. Classification of algebras according to criteria satisfied
the algebra supports a three-dimensionalvisual model and whether each historicalrelation in the algebra has a unique rep-resentation. Based on these two criteria,we can identify the “approach” of eachalgebra, as shown in Figure 13. Thequadrant an algebra occupies indicatesthose aspects the algebra’s designer(s)chose to emphasize. For example, Yeungchose to satisfy both criteria, at the costof not being able to satisfy the remainingfive conflicting criteria listed in Figure10. Ben-Zvi made exactly the oppositedecision: His algebra satisfies the fivecriteria, but not the other two. InTuzhilin’s algebras, representation re-strictions are not imposed. Hence, theremay or may not be a unique representa-tion for each historical state, and thushis algebras appear in two quadrants.There is obviously no consensus as towhich approach is superior; each has sev-eral proponents. The design space hasbeen explored in the sense that all com-binations of basic design decisions haveat least one representative algebra.
Concerning the compatible criteria,there is no a priori reason all cannot besimultaneously satisfied (Section 3.3 con-tains a partial argument to that effect).One measure of the quality of an algebrais the extent to which it satisfies thesecriteria. All algebras surveyed here aredeficient, some more so than others.
We have attempted to identify as manycriteria as possible (we uncovered a totalof 36). We characterize criteria as con-flicting (7), consistent (19), and rejected(10), based on logical and empirical argu-ments. We assign the algebras to fourpossible approaches based on the conflict-ing criteria to determine the qualityof the algebras based on the consistentcriteria.
We view the comparison methodologyto be as important a contribution as theanalysis of the individual algebras. Sinceno algebra was identified as being objec-tively superior, future research must firstprove one of the four approaches to bethe most appropriate, then define an al-gebra taking this approach that satisfiesall of the consistent criteria.
ACKNOWLEDGMENTS
We thank James Clifford, Nikos Lorentzos, andAbdullah Uz Tansel for their critique and sug-
gested improvements to an earlier version of ourlist of criteria for evaluating temporal algebrasThe reviewers, Gregory Andrews and Chrmtian S,Jensen provided detailed suggestions that im-proved this paper. Salvatore March’s very thoroughsubsequent critique inspired many furtherimprovements.
Research by the first author was sponsoredm part by the United States Air Force. Research
by the second author was sponsored in part by anIBM Faculty Development Award. The work was
ACM Computing Surveys, Vol 23. No 4, December 1991
Evaluation of Temporal Algebras “ 541
also supported by NSF grants DCR-8402339 and
IRI-8902707 and ONR grant NOO014-86-K-0680.
REFERENCES
ALLEN, J. F., AND HAYES, P. J. 1985. A common-sense theory of time, in Proceedings of theInternational Joinf Conference on ArtificialIntelligence. (Los Angeles, Calif. Aug. 1985),pp. 528-531.
ANDERSON, T. L. 1981. The database semanticsof time. Ph. D. dissertation, University ofWashington.
ANDERSON, T. L. 1982. Modeling time at the con-ceptual level, in Proceedings of the Interna-tional Conference on Databases: ImprovingUsabd@ and Responsiveness. P. Scheuer -mann, Ed. (Jerusalem, Israel, June 1982),Academic Press, pp. 273-297.
AIUAV, G 1986. Atemporally oriented datamodel,ACM Trans. Database Syst. 11, 4 (Dee),499-527.
ARIAV, G., AND CLIFFORD, J. 1986. Temporal datamanagement: Models and systems, in New Di-rections for Database Systems. Ablex Publish-ing Corporation, Norwood, N. J., Chap 12, pp.168-185.
BEN-ZVI, J. 1982. The time relational model.Ph. D. dissertation, Computer Science I)epart-ment, Univ California, Los Angeles.
BHAIWAVA, G , AND GADIA, S. K. 1990. The con-cept of error in a database: An application oftemporal databases, in Proceedings of 1990
COMAD International Conference on Manage-ment of Data. N. Prakash, Ed. Tata McGraw-Hill, New Delhi, pp. 106-121.
BHARGAVA, G., AND GADIA, S. K. 1991. Relationaldatabase systems with zero information-loss,IEEE Trans. Knowledge Data Eng., To be pub-lished.
BROOKS, F. F’. 1956. The analytic design of auto-matic data processing systems. Ph. D. disserta-tion. Harvard Univ.
BUBENKO, J. A., JR. 1977, The temporal dimen-sion in information modeling, in Architectureand Models in Data Base Management Systems.
North-Holland Publishing, The Netherlands,pp. 93-118.
CHEN, P. P-S. 1976. The entity-relationship model:Toward a unified view of Data ACM Trans.Database Syst. 1, 1 (Mar.), 9-36.
CLIFFORD, J. 1982. A model for historicaldatabases, in Proceedings of Workshop on LogL-cal Bases for Data Bases. (Toulouse, France).
CLIFFORD, J., AND CROKER, A 1987. The historicalrelational data model (HRDM) and algebrabased on lifespans, in Proceedings of the Zntei--natzonal Conference on Data Engineering. (LosAngeles, Calif.). IEEE Computer Society Press,pp. 528-5.37.
CLIFFORD, J , AND RAO, A. 1987 A simple, generalstructure for temporal domains, in Proceedings
of the Conference on Temporal Aspects in Infor-mation Systems. (France). AFCET, pp. 23-30.
CLIFFORD, J., AND TANSEL, A. U. 1985. On analgebra for historical relational databases: Twoviews, in Proceedings of ACM SIGMOD Inter-national Conference on Management of Data. S.
Navathe, Ed. (Austin, Texas, May), ACM Press,pp. 247-265.
CLIFFORD, J., AND WARREN, D. S. 1983. Formalsemantics for time in databases. ACM Trans.Database Syst. 8, 2 (June), 214-254.
CODD, E. F. 1970 A relational model of data forlarge shared data banks. Commun. ACM 13, 6(June), 377-387.
CODD, E. F. 1990. The Relat~onal Model forDatabase Management: Vers~on 2. Addison-Wesley Publishing Company, Reading, Mass.
CROKER, A., AND CLIFFORD, J. 1989. On complete-ness of historical relational data models. Tech.Rep. New York University.
DADAM, P., LUM, V., AND WERNER, H.-D. 1984Integration of time versions into a relationaldatabase system, m Proceedings of the Confer-
ence on Very Large Databases. U. Dayal, G.Schlageter, and L.H, Seng, Eds. (Singapore,Aug.), pp. 509-522.
DATE, C J, 1986. An informal definition of therelational model, in Relational Database: Se-
lected Writings. Addison-Wesley, Reading,Mass., Chap. 2. pp. 21-31.
DEEN, S. M. 1985. DEAL: A relational languagewith deductions, functions and recursions. Dataand Knowledge Englneermg, 1.
ELMASRI, R,, AND NAVATHE, S, B, 1989, Funda-
mentals of Database Systems. Benjamin/Cum-mings Pub. Co., 1989.
ENDERTON, H. B. 1970. Elements of Set Theory.
Academic Press, New York.
GADIA, S. K. 1986. Toward a multlhomogeneousmodel for a temporal database, in Proceedingsof the International Conference on Data Engi-neering. (Los Angeles, Calif. ). IEEE ComputerSociety Press, pp. 390-397.
GADIA, S. K. 1988. A homogeneous relationalmodel and query languages for temporaldatabases. ACM Trans. Database Syst. 13, 4(Dee), 418-448.
GADIA, S. K., AND VAISHNAV, J. H. 1985. A querylanguage for a homogeneous temporaldatabase, in 1+-oceedmgs of the ACM Sympo-sium on Principles of Database Systems (Mar.),ACM Press, pp. 51-56.
GADIA, S. K., AND YEUNG, C S. 1988 A general-ized model for a relational temporal database,in Proceedings of ACM SIGMOD Interaatzon alConference on Management of Data. (Chicago,111.,June 1988). ACM Press, pp 251-259.
HANSON, E. N. 1987. A performance analysis ofview materialization strategies, in Proceedingsof the ACM SIG’MOD Interaatlonal Conferenceon Management of Data. U. Dayal and1. Traiger, Eds. (San Francisco, Calif., May1987). ACM Press, pp. 440-453.
ACM Computing Surveys, Vol. 23. No. 4, December 1991
542 ● L. E. McKenzie and R. Snodgrass
HANSON, E. N. 1988. Processing queries againstdatabase procedures: A performance analysls,in Proceedings of ACM SIGMOD International
Conference on Management of Data. H. Boroland P.-A. Larson, Eds., (Chicago, 111., June1988) ACM Press, pp 295-302.
JENSEN, C S , MARK, L , AND ROUSSOPOULOS,N,1991. Incremental implementation model forrelational databases with transaction time,IEEE Transactions on Knowledge and DataEngineering. To be published
JONES, S., MASON, P , AND STAMPER, R. 1979.LEGOL 2.0: A relational specification lan-guage for complex rules. Inf Syst. 4, 4, (Nov),293-305.
KLOPPROGGE,M. R, 1981, TERM: An approach toinclude the time dimension in the entity-relationship model, in Proceedings of the Sec-
ond Intern at~onal Conference on the EntityRelationship Approach. (Washington, D.COtt). pp. 477-512.
KLU~, A. 1982. Equivalence ofrelatlonal algebraand relational calculus query languages hav-ing aggregate functions, J. ACM 29, 3 (July),699-717.
LINDGREEN, P, 1982. The information graph, inProceedings of the 1st Scandinavian Research
Seminar on Information Modelling andDatabase Management. (University ofTampere, Jan ), pp. 103-127.
LORENTZOS,N. A 1988. A formal extension of therelational model for the representation andmampulatlon of generic intervals Ph.D.dissertation, Birkbeck College. Umversity ofLondon.
LORENTZOS,N. AND JOHNSON, R. 1988. Extendingrelational algebra to manipulate temporal dataInfi Syst, 13, 3, 289-296.
LUM, V., DADAM, P., ERBE, R., GUENAUER, J ,PISTOR, P., WALCH, G., WERNER, H., ANDWOODFILL, J 1984. Desigmng DBMS supportfor the temporal dimension, in Proceedings ofACM SIGMOD International Conference onManagement of Data. B, Yormark, Ed. (Boston,Mass , June), ACM Press, pp. 115-130.
MAIER, D. 1983. The Theory of RelationalDatabases. Computer Science Press, Rockvllle,Md.
MANOI.A, F., AND DAVA., U 1986 PDM: An ob-ject-oriented data model, in Proceedings of the
International Workshop on Object-OrLentedDatabase Systems
MARTIN, N. G., NAVATHE, S. B., AND AHMED, R1987. Dealing with temporal schema anoma-lies in history databases, in Proceedings of theConference on Very Large Databases. P. Ham-mersley, Ed (Brighton, England, Sept. ) pp.177-184.
MCKENZIE, E. 1986. Bibliography: Temporaldatabases, ACM SIGMOD Record 15, 4 (Dee),40-52,
MCKENZIE, E. 1988 An algebraic language forquery and update of temporal databases, Ph.D.dissertation. Computer Sc]ence Department,Univ. of North Carolina at Chapel Hill,
MCKENZIIL E., AND SNODGRASS,R. 1990. Schemaevolutlon and the relational algebra. Infi Syst.15, 2 (June), 207-232
MCKENZIE, E , AND SNODGRASS,R. 1991. Support-ing valid time in an historical relational algebra: Proofs and Extensions. Tech. Rep. TR91-15 Dept. of Computer Science, Univ. ofArizona
NAVATHE, S. B,, AND AFUMED,R. 1987. TSQL–Alanguage interface for history databases, inProceedings of the Conference on Temporal As-pects zn Informat~on Systems. (France, May)AFCET, pp. 113-128.
NAVATHE, S. B., AND AHMED, R. 1989. A temporalrelational model and a query language. Inf
Sci. 49, 147-175
OVERMYER, R., AND STONEBRAKER, M. 1982. Im-plementation of a time expert in a databasesystem. ACM SIGMOD Record 12, 3 (Apr ),51-59
REISNER, P. 1981. Human factors studies ofdatabase query languages: A survey and as-sessment ACM Comput, Suru. 13, 1 (Mar.),13-31.
REISNER. P., BOYCE, R F., AND CHAMBERLAIN,D. D,1975. Human factors evaluation of two database query languages: Square and sequel, mProceedings of the AFIPS National Computer
Conference (Arlington, Va ) AFIPS Press, pp447-452,
RESCHER, N. C., AND URQUHART, A, 1971. Tempo-ral Logic. Springer-Verlag, New York,
ROUSSOPOULOS,N 1991. The incremental accessmethod of view cache: Concept, algorithms, andcost analysis. ACM Trans Database Syst. Tobe published.
SADEGHI, R .1987 A database query language foroperations on historical data Ph D. disserta-tion, Dundee College of Technology.
SADEGHI, R., SAMSON, W. B,, AND DEEN, S M, 1987.HQL: A historical query language. Tech. Rep.Dundee College of Technology,
SARDA, N. 1990. Algebra and query language fora historical data model Comput. J. 33, 1 (Feb ),11-1%
SHIPMAN, D W. 1981 The functional data modeland the data language DAPLEX. ACM Trans.Database Syst. 6, 1 (Mar.), 140-173
SMITH, J. M., AND CHANG, P. Y.-T 1975 Optimiz-ing the performance of a relational algebradatabase interface, Commun ACM 18, 10 (Ott),568-579.
SNODGRASS, R. 1987. The temporal query lan-guage TQuel. ACM Trans. Database S-yst, 12,2 (June), 247-298
SNODGRASS,R , AND AHN, 1. 1985 A taxonomy oftime in databases, in Proceedings of ACM SIG-
ACM Computing Surveys, Vol. 23, No. 4, December 1991
Evaluation of Temporal Algebras ● 543
MOD International Conference on Managementof Data. S, Navathe, Ed, (Austin, Tex, May),ACM Prees, pp. 236-246.
SNO~GRASS, R , AND AHN, I. 1986. Temporaldatabases. IEEE Comput. 19, 9 (Sept.), 35-42.
SOO, M. D. 1991. Bibliography on temporaldatabases. ACM SZGMOD Record 20, 1 (Mar,),14-23
STAM, R., AND SNODGRASS,R. 1988. A bibliogra-phy on temporal databases. Database Eng. 7, 4(Dec.), 231-239
TANSEL, A, U, 1986. Adding time dimension torelational model and extending relational alge-bra. In/ Syst. 11, 4, 343-355,
TANSEL, A. U. 1987. A statistical interface forhistorical relational databases, in F%oceedirzgsof the International Conference on DataEngineering (Los Angeles, Calif., Feb). IEEEComputer Society Press, pp. 538-546,
TANSEL, A. U., AND ARKUN, M. E. 1985 Equiva-lence of historical relational calculus and his.torical relational algebra. Tech. Rep. BernardM, Baruch College, City Univ. of New York.
TANSEL, A U., AND AR~UN, M. E. 1986. HQUEL:A query language for historical relationaldatabases, in Proceedings of the 3rd Interna-
tional WorkshoD on Statistical and ScientificDatabases.
Recewed October 1987, final revlslon accepted July 1991.
TANSEL, A. U., ARKUN, M. E., AND OZSOYOGLU, G.1989. Time-by-example query language forhistorical databases, IEEE Trans. Softzo. Eng.15, 4 (Apr.) 464-478.
THOMPSON, P. M. 1991. A temporal data modelbased on accounting principles. Ph D disserta-tion. Dept. of Computer Science, Univ. ofCalgary.
TUZHJLIN, A , AND CLIFFORD, J 1990 A temporalrelational algebra as a basis for temporal rela-tional completeness, in Proceedings of the Con-
ference on Very Large Databases. (Brisbane,Australia).
ULLMAN, J. D, 1988b. Database and Knowl-edge – Base Systems. Vol. II. Computer sciencePress, Rockville, Md
ULLMAN, J. D. 1988a. Principles of Database andKnowledge-Base Systems Vol I Computer Sci-ence Press, Rockville, Md , Vol 1.
VANDENBERG, S. L., AND DEWITT, D. J. 1991. Al-gebraic support for complex objects with ar-rays, identity, and inheritance, in Proceedingsof ACM SIGMOD Internat~onal Conference on
Management of Data. J, Clifford and R. King,Eds. (Denver, Col., May). ACM Press, pp158-167.
YEUNG, C. S. 1986 Query languages for a hetero-geneous temporal database. Master’s Thesis,EE/CS Dept. Texas Tech. Univ.
ACM Computmg Surveys, Vol 23, No 4, December 1991