Embed
Email

Vaishnav and Dr. Shashi K - Texas Tech University

Document Sample

Shared by: yurtgc548
Categories
Tags
Stats
views:
2
posted:
11/30/2011
language:
English
pages:
83
Copyright Jay H. Vaishnav and Dr. Shashi K. Gadia 1984

1''







ACKNOWLEDGEMENTS





I am deeply indebted to Dr. Shashi K. Gadia for h i s di-

r e c t i o n of t h i s t h e s i s . Thanks are a l s o due to Dr. Donald L.

Gustafson and Dr. Martin Hardwick for t h e i r kind i n t e r e s t

and h e l p f u l criticisms.

I take t h i s opportunity to thank Dr. Edgar O'Hair and

Col. Travis Simpson of the Crosbyton Solar Power P r o j e c t for

t h e i r a c t i v e support and encouragement.









11

CONTENTS



ACKNOWLEDGEMENTS 11



LIST OF TABLES v

ABSTRACT vi









CHAPTER

I. INTRODUCTION 1

II. LITERATURE SURVEY U

2. 1 A HDB Model 4

2.2 A Survey 5

2.3 LEGOL 2.0 5

2.4 QUEL The Query Language for INGRES 8

2.5 The Temporal Query Language TQUEL 11

III. A TEMPORAL DATABASE 16

3.1 Fundamental Concepts 16

3.2 A Temporal Database Model 17

3.3 About Temporality 20

3.U Binding Temporality 21

IV. THE TEMPORAL QUERY LANGUAGE HTQUEL 28

4.1 An Overview of the Language 28

4.2 BNF of the Retrieve Statement 42

4.3 Updates to the Database 45

4.4 BNF of the Update Statements 46

4.5 Aggregate Operations 47

V. SEMANTICS OF OPERATIONS 49

5.1 Fundamental Structares 49

5.2 Temporal Predicates 51

5.3 Semantical Expressions 53





iii

VI. SOME IMPLEMENTATIONAL DETAILS 57

6-1 Algorithms for Temporal Operations 58

6.2 Algorithms for Set Operations 62

VII. CONCLUSIONS 71

REFERENCES 7a









IV

LIST OF TABLES



1. The Person R e l a t i o n 6

2 . P r o j e c t i o n s of t h e Person R e l a t i o n 7

3 . The New P r o j e c t i o n s 7



4 . The Emp R e l a t i o n 9



5 . The Hipay R e l a t i o n 9



6 . The Weight R e l a t i o n 12

7 . The Height R e l a t i o n 12



8 . The P e r s o n s R e l a t i o n 14

9- The P e r s o n n e l R e l a t i o n 23



10. Snapshot of P e r s o n n e l a t [ [ 5 , 5 ] ] 24

11. P e r s o n n e l [ [ 5 , 5 ] ] as a S t a t i c Relation 25



1 2 . A Combined Tuple f o r George 26

13. A V a l i d Temporal Tuple 27

1 4 . The Employee R e l a t i o n 29

15. The Management R e l a t i o n 30

16. The Demp R e l a t i o n 33



1 7 . The Hi t a x R e l a t i o n 35



1 8 . The C l o s u r e R e l a t i o n 37



19. The T j o i n R e l a t i o n 38



2 0 . The F u z z y - t u p l e R e l a t i o n 39



2 1 . The D i s t i n c t - t u p l e R e l a t i o n 40

ABSTRACT



The role of time in databases is being studied by re-

searchers increasingly. Temporal query languages have been

proposed for a number of historical database models. This

thesis contains a survey of some important temporal rela-

tional database models and their query languages. A new tem-

poral query language is proposed for a temporal database

model.









VI

CHAPTER I



INTRODUCTION





The following i s a brief introduction to r e l a t i o n a l da-

tabases. A r e l a t i o n a l database i s one in which a l l data i s

viewed as being stored in t a b l e s . This organization of data

was suggested by E. F. Codd [1 ]• Each row in a table has

the same format and r e f l e c t s some r e l a t i o n s h i p e x i s t i n g in

the real world. This tabulated view i s a very elegant one

because the organization of data h i g h l i g h t s relationships

clearly. The theory of r e l a t i o n a l databases has i t s founda-

tion in the s e t theory of mathematics which i s a well-devel-

oped d i s c i p l i n e .

Conventional databases are updated from time-to-time,

i.e., modifications are made t o the e x i s t i n g information,

sometimes causing l o s s of old, out-of-date data. Such data-

bases store information current t o the l a t e s t update. One

method to prevent such l o s s e s i s to time stamp data, i.e.,

a s s o c i a t e a time value with data to i n d i c a t e i t s period of

validity. The incorporation of tine inposes a chronological

order nithin the database. Such a database i s termed a

h i s t o r i c a l database.

In this thesis report, we refer to a fundamental

historical database model [3], and discuss the temporal

relational database models proposed by Jones, Mason and

Stamper [4] and Snodgrass [11]. In Chapter II we point out

some problems that exist in these models.

In Chapter III we describe the homogeneous temporal da-

tabase model being proposed by Gadia [13] and present a

query language for it. We have developed a language, HTQUEL,

to query historical relational databases that are homogene-

ous in time. The term honogeneous is explained later in this

report and is attributed to Gadia [13]. HTQUEL is an exten-

sion of QUEL and it utilizes the QUEL retrieve statement as

the fundamental query statement. The existing features of

QUEL are not discarded. The temporal operations are an addi-

tional feature introduced by us. We present a BNF [2] of our

grammar for the retrieve statement and define temporal oper-

ations in terms of certain primitives that we introduce. We

also discuss updates to temporal databases and present a BNF

[2] of our grammar for these operations. Finally, we present

some implementational details.

The Crosbyton Solar Power Project is maintaining a da-

tabase of experimental data obtained by monitoring the per-

formance of an experimental solar energy-powered system. The

data consists of readings of temperature and pressure

sensors, thermic fluid flow measurements, measurements of

ambient conditions and solar collector related data. A data

acquisition system scans the recording channels periodically

and time stamps each scan using clock time. Records generat-

ed during each scan are organized as a file sorted by time

stamps.

It is felt that the results established through this

work will serve as a foundation for future work in the area

of temporal databases. It nay also serve the needs of users

like the Crosbyton Solar Power Project.

CHAPTER I I

LITERATURE SURVEY



A number of models f o r h i s t o r i c a l d a t a b a s e s and tempo-



r a l query l a n g u a g e s have been r e p o r t e d i n l i t e r a t u r e on da-



tabase theory. A d i s c u s s i o o of r e f e r e n c e s c l o s e l y pertinent



t o t h i s t h e s i s - w o r k w i l l be p r e s e n t e d in t h i s section.









2»1 A HDB Model

Clifford and Warren [ 3 ] have added t h e time dimension

to static relations by describing a historical database

(HDB) model a s a cube composed of a t i m e - o r d e r e d s e q u e n c e of

f l a t s t a t i c r e l a t i o n s . An a t t r i b u t e , STATE, time stamps each

t u p l e and a b o o l e a n a t t r i b u t e , EXISTS, f l a g s the existence

of a t u p l e a t t h a t s t a t e - They have f o r m a l l y d e s c r i b e d the

r e l a t i o n s h i p between a HDB and an i n t e n s i o n a l logic, the

t e m p o r a l c o u n t e r p a r t of p r e d i c a t e c a l c u l u s . We f e e l t h a t it

is a theoretical work o f fundamental i m p o r t a n c e . We l e a v e

i t s relationship t o our work t o be e x p l o r e d by future re-

searchers.

2.2 A Survey

Bolour et al. [4] have compiled a survey of material

concerning the role of tine in information processing. It

contains references to diverse fields including temporal lo-

gic, linguistics, historical database models, temporal query

languages and artificial intelligence. Summaries of some of

the references highlight the concepts being introduced or

report details in brief. We have found this paper to be an

exhaustive cross-reference guide.







2.3 LESgi 2.0

Jones, Mason and Stamper [5] have designed LEGOL 2-0, a

relational algebra-like language, to query relational data-

bases. Jones and Mason [6] have described LEGOL 2.0 through

examples. Time is treated like an attribute in their model.

Each tuple has start and end times appended to it. Projec-

tions on these time attributes are allowed. Time-related op-

erations satisfy temporal queries. LEGOL 2.0 appears to be a

language capable of powerful operations. However, the ratio-

nale underlying these operations has not been described. In

our opinion, this makes it difficult for a reader to assess

the potential of certain operations described by them, in

particular, the tuple-merging operation.

Jones e t a l . [ 5 ] c l a i n t h a t a r e l a t i o n as in Table 1

can be r e s t o r e d fron i t s p r o j e c t i o n s , shown in Table 2 , us-

ing t h e tuple-merging p r o c e s s . The person r e l a t i o n records

the t i n e for which a person worked with an o r g a n i z a t i o n .

S i n c e LEGOL 2 . 0 queries h i s t o r i c a l databases, if Jack r e -

joined the o r g a n i z a t i o n from s a y , 6/6/74 to 6/6/76, a new

t u p l e would appear with t h i s information in the person r e l a -

tion as well as i t s projections. The new p r o j e c t i o n s would

appear now as shown in Table 3.





TABLE 1

The Person Relation





PERSON I START | END





Jack I 1/7/54 | 1/7/70





Jim I 3/9/53 I 3/9/69









It is unclear whether the tuple merging process can

restore the original relation. There are two tuples of Jack

to be merged now. There can be four combinations, two of

which will be illegal. In light of this problem we cannot

help but feel that clarifications would be welcome.

TABLE 2

Projections of the Person Relation





PERSON I START | END PERSON 1 START 1 END 1





Jack I 1/7/54 | Jack I 1 1/7/70 1





Jin I 3/9/53 | Jim 1 1 3/9/69 1

.i c

2(a) 2(b)







TABLE 3

The New Projections





I 1 1 1

PERSON I START I END | I PERSON | START | END





Jack I 1/7/54 | Jack I I 1/7/70







Jim I 3/9/53 | Jim 1 I 3/9/69







Jack I 6/6/74 | Jack I I 6/6/76

.J L.

3(a) 3(b)

8



2.4 QUEL The Qli^ry Language for

ING|ES

INGRES [7, 14] is a relational database system that

supports a relational calculus based query language, QUEL. A

query in QUEL is composed of range statements followed by

retrieve statements. Range statements define the scope of a

tuple variable. Retrieve statements consist of a target list

which defines the horizontal format of the target relations,

and a where clause which imposes conditions of selection on

tuples of the existing relations. QUEL also supports update

statements and aggregate operations. Nesting of statements

is disallowed. We present a QUEL query on the emp relation

of Table 4.



Example 2.1 List the name and salary of those employees of

the design department whose salary exceeds $25,000.

range of e is enp

retrieve into hipay(person=e.name,pay=e.salary)

where e. dept=design

and e.salary>25,000

The hipay relation of Table 5 shows that the intermedi-

ate results of a QUEL query are of the same type as the

original relation. The semantics of this query in tuple

relational calculus due to Ullman [8], expressed in the

notation due to Maier [9], where R is the schema for

employee, is.

TABLE 4



The Emp R e l a t i o n







NAME I DEPT 1 SALARY







george | design | 40,000







John I design i 30,000







paul 1 production 1 45,000







fred I design | 20,000









TABLE 5



The Hipay Relation







PERSON I PAY







george | 40,000







John I 30,000

10

{p (person, pay) l3e(R) (employee (e)

& P(person) = e(name)

^ P(pay) = e (salary)

G e(dept) = design

S e(salary) > 25000)}



The above expression defines the relation corresponding

to the QUEL query. It is a set of tuples p with attributes

PERSON and PAY. The expression requires the selection of tu-

ples e on schema R, belonging to the employee relation, that

have a domain value Design in the DEPT column and a domain

value exceeding 25,000 in the SALARY column. Then projec-

tions on the NAME and SALARY columns of e, renamed to PERSON

and PAY, define a tuple p.

Such a semantics may be given to certain retrieve

statements that do not contain any aggregate operators. For

queries formulated in QUEL tuple relational calculus expres-

sions of the type shown above are safe, i.e., their in-

terpretation is equivalent under limited and unlimited eval-

uation.

11

2-5 The Temporal Query Language

T2UEL

Tquel is a temporal extension of QUEL based on a tempo-

ral relational database model forwarded by Snodgrass [ 8, 9,

10]. This is a result of Snodgrass" doctoral and post-docto-

ral research and is the most recent development in this

area.

Relations are classified according to whether their

period of validity extends over a time interval or a time

instant. START, STOP times are always associated with every

interval based relation as shown in Tables 6 and 7. For ins-

tant based relations the STOP time is omitted.

This approach to the incorporation of time in rela-

tions, followed by Snodgrass [11] and Jones et al. [5],

causes units of information to be split over several tuples.

Thus there are two tuples of Fred in each of Tables 6 and 7-

This splitting of information is termed a vertical temporal

anomaly by Gadia [13].

Only those attributes which are valid over identical

intervals of time can exist together in a tuple. If attri-

butes that belong to a given relation scheme are valid over

non-identical intervals of time, it is necessary to split

the given scheme into two or more schemes. The horizontal

format of static (non-tenporal) relations is no longer

12

TABLE 6



The Weight Relation







NAME I WEIGHT | START | STOP





Fred I 150 | 01-75 | 06-76







Fred I 160 | 07-76 I 12-77







John I 2 0 0 I 03-79 | 06-79







John I 2 7 5 | 07-79 | 12-79









TABLE 7



The H e i g h t Relation







NAME I HEIGHT I START | STOP







Fred | 5« 10" | 0 1 - 7 5 | 08-76







F r e d | 6« 0 1 " | 0 9 - 7 6 | 12-77







John I 6« 04" J 0 1 - 7 3 | 03-82

13

retained. Thus Weight and Height e x i s t as two separate

relations. This r e s t r i c t i o n on t h e h o r i z o n t a l format of r e -

lations is called a h o r i z o n t a l temporal anomaly by Gadia

[13]. I t disallows a p p l i c a t i o n of the normal forms theory

[9].

The v e r t i c a l anomaly cannot be avoided in r e l a t i o n s . In

t r y i n g t o avoid the h o r i z o n t a l anomaly the v e r t i c a l anonaly

increases. For example, i t i s p o s s i b l e t o s t o r e information

about F r e d ' s weight and height t o g e t h e r only by s p l i t t i n g

the t i n e i n t e r v a l 01-75 to 12-77 i n t o three sub-intervals,

01-75 t o 06-76, 07-76 t o 08-76 and 09-76 t o 12-77.

In Tquel [ 1 1 ] , t h e where c l a u s e q u a l i f i e s t u p l e s . Tem-

poral r e f e r e n c e s a r e made using a when c l a u s e which is a

"temporal analogue" of t h e where c l a u s e . I n t e r s e c t i o n s in

time a r e performed by the overlap o p e r a t o r . The following

Tquel query r e t r i e v e s Table 8.



Example 2.2 Name those persons whose height was over 6 f t .

when t h e i r weight was over 150 l b s .

range of h i s height

range of w i s weight

r e t r i e v e i n t o persons (h. name)

where h.height>6

and w.weight>150

when h overlap w

14

TABLE 8

The Persons Relation





I 1

NAME I START | STOP





fred I 09-76 | 12-77





John I 03-79 I 12-79









The s e m a n t i c s of t h e query o f Example 2. 2 a c c o r d i n g to



Snodgrass [ 1 2 ] , expressed in t u p l e r e l a t i o n a l c a l c u l u s due



t o Ullman [ 8 ] using t h e n o t a t i o n due t o Maier [ 9 ] , where R1



i s the scheme f o r w e i g h t and R2 i s t h e scheme for height,



is,



( u (name,start,stop) | 3 w(Rl) 3 h (R2) (



weight(w) & h e i g h t (h)



& u[ name ] = h[narae]



& h[ h e i g h t ] > 6



5 w[ w e i g h t ] > 150

6 u[ s t a r t ] = ( i f B e f o r e ( h [ s t a r t ] , w[ s t a r t ]) then w[ s t a r t ]



else h[start])

e u[stop] = (if Before ( h [ s t o p ] , w [ s t o p ] ) then h[stop]



else w[stop]

S (Before (h[ s t a r t ] , w [ s t o p ] ) R Before («[ s t a r t ],h[ s t o p ])) }

15





The semantics involved is similar to that in example

2- 1. The attribute NAME of the tuple u is a projection on

the attribute NAME of a tuple h that satisfies the pre-

scribed restrictions. Before is a predicate which checks

whether the first parameter occurs prior to the second par-

ameter in tine, i.e.. Before (2,5) and Before(2,2) are true

but Before (5,2) is not. To understand the last three claus-

es, let us suppose that the interval underlying the overlap

of tuples h and w is [i#j]- The first and second clauses

calculate the start instant i and stop instant j for [irj].

They are defined even if an overlap does not exist for tu-

ples h and w. The third clause assures that h and w do in-

deed overlap.

CHAPTER III



A TEMPORAL DATABASE





In t h i s s e c t i o n we give a b r i e f i n t r o d u c t i o n to Gadia*s

t e n p o r a l database n o d e l . For more d e t a i l s and examples the

reader i s r e f e r r e d to Gadia [ 1 3 ] . Then we proceed t o bind

temporality t o our model so that it is s u i t a b l e for our

query language. At t h a t point we g i v e s e v e r a l examples.







3-1 Fundamental Concepts

We first state the fundamental concepts related to

static, i.e., non-temporal databases. We w i l l be f o l l o w i n g

t h e n o t a t i o n forwarded by Maier £ 9 ] .

e

W assume that we have a universal s e t of a t t r i b u t e s

U - (A 1, A2, . • - , A n } , a s e t Ooms of domains and a mapping

dom : U—>Doms t h a t g i v e s a domain v a l u e , dom(Ai), f o r each

a t t r i b u t e Ai.

A r e l a t i o n scheme R i s a non-empty subset of U. A t u p l e

f on r e l a t i o n scheme R i s a function from R t o Doms such

t h a t f (Ai) € dom (Ai) f o r each Ai G R. A r e l a t i o n r over a

r e l a t i o n scheme R i s a f i n i t e s e t of t u p l e s over a.

A subset K of R i s c a l l e d a key of r i f whenever two

t u p l e s t 1 , f2 of r s a t i s f y f1(K)=f2(K) then t 1 ( a ) = ? 2 ( R ) .







16

17

A database schema R i s a f i n i t e s e t of r e l a t i o n schemes

(R 1 , R 2 , . . . ,Rn} . A (static) database over fi i s a s e t of r e -

lations [ r 1 , r 2 , . . . ,rn} such t h a t r i i s a r e l a t i o n over Ri, 1

25000

35





and e1.name=george

and e 1 . s a l a r y > 2 5 0 0 0

and n.manager=fred

and m.dept=production





The t e m p o r a l domain f o r G e o r g e ' s e a r n i n g over $25,000

i s [ 4 , 7 ] and f o r F r e d ' s t e n u r e as t h e manager of production

is [1,7]. The simultaneous occurrence of t h e s e e v e n t s de-

f i n e s a temporal domain [ 1 , n o w ] n [^#7] = [ 4 , 7 ] which d e -

c i d e s the s e l e c t i o n of t h e employees i n Table 17.







TABLE 17



The H i t a x Relation





NAME I SALARY







[ 4 , 7 ] george | [4,5] 30,000



I [ 6 , 7 ] 35,000







[ 6 , 7 ] John I [6,7] 30,000







[ 4 , 7 ] fred | [ 4 , 7 ] 45,000

36

The where clause retrieves tuples of the existing

relations which s a t i s f y the prescribed constraints over

i d e n t i c a l temporal domains. I t i s often necessary to view a

s u p e r s e t of such information in order to obtain a comprehen-

sive picture of the database. e

W have an operation t h a t

groups a l l t u p l e s according to s p e c i f i e d a t t r i b u t e s . The r e -

s u l t of t h e following guery i s shown in Table 18.



Exanple 4.6 Retrieve the e n t i r e information about persons

who were employees in the Production Department for some

time while John was the manager of Design,

range of e i s employee

range of m i s nanagenent

r e t r i e v e c l o s u r e (e. nane,e. d e p t , e . s a l a r y ) by name

where e.dept=production

and m.manager=John

and m.dept=design

John was a manager of Design for [ 6 , 7 ] . At t h i s time,

both George and Fred are employees in Production. The t u -

AE

p l e s f o r both of these employees a r e enlarged using the N M

attribute.

The following exanple illustrates the fornation of

tenporal joins on tenporal relations.

37

TABLE 18

The C l o s u r e Relation





1 NAME 1 DEPT 1 SALARY





1 [1,now] george | [ 1 . 5 ] design 1 [1.3] 25,000



1 1 [6,7] production 1 [^.5] 30,000



1 1 1 [6,7] 35,000



1 1 [8,now ] d e s i g n 1 [ 8,now] 40,000





1 [1,7] fred 1 [1.7] production 1 [ 1 . 7 ] 45,000









Exanple 4 . 7 L i s t t h e nane and d e p a r t n e n t of t h e .managers of

p r o d u c t i o n and a l s o l i s t their salary,

range of e i s employee

range o f m i s management



r e t r i e v e i n t o n i n f o ( n . n a n a g e r , n. d e p t , e . s a l a r y )



where e.nane=n.nanager



and n.dept=production





T h i s j o i n i s performed on t u p l e s o f t h e management r e -



l a t i o n with t u p l e s o f t h e employee r e l a t i o n where a match i s



found i n t h e a t t r i b u t e NAME and t h e t u p l e s p o s s e s s identical

38

t e m p o r a l d o m a i n s . The r e s u l t of t h i s q u e r y i s shown in Table

19.







TABLE 19



The T j o i n Relation





MANAGER | DEPT 1 SALARY







[1,7] fred | [1,7] production | [ 1 , 7 ] 45,000





[8,now] paul I [8,now] production | [8,now] 45,000









Let us suppose t h a t t h e t u p l e s shown i n T a b l e 19 e x i s t



a s a s i n g l e t u p l e i n T a b l e 14. Then a q u e r y , such a s in the



f o l l o w i n g e x a m p l e , w i l l r e t r i e v e a r e l a t i o n which may a p p e a r



t o be unusual t o a u s e r . Such a relation i s shown i n T a b l e



20.



Exanple 4 . 8 L i s t t h e n a n e and s a l a r y of e n p l o y e e s who ^ a v e



earned a s a l a r y g r e a t e r than $30,000 f o r two y e a r s or nore,



a s s u n i n g t h a t now = 1 2 .



r a n g e of e i s enployee

retrieve (e.nane,e.salary) where e.salary>30000

and d u r a t i o n ( e . s a l a r y ) > = 2

39

TABLE 20

The F u z z y - t u p l e Relation





NANE I SALARY







[6,7] george | [ 6 , 7 ] 35,000





[1,7] fred | [1,7] 45,000

[ 8 , n o w ] paul | [8,now] 45,000





[ 8 , n o w ] george | [ 8 , n o w ] 40,000









The Juration c l a u s e s e l e c t s those t u p l e s where the tem-

e

poral domain spans over two years or more. W have discussed

temporal t u p l e s in s e c t i o n 3.4 and we e x p e c t the r e s u l t of

the query t o be as shown in Table 20. This happens because

the range v a r i a b l e cannot d i s t i n g u i s h such tuple combina-

t i o n s and r e t r i e v e s t h e e n t i r e information content. Fuzzy

t u p l e s always e x i s t in the database and can cause unexpected

information t o appear i n r e l a t i o n s . The previous examples

gave a s t r a i g h t - f o r w a r d i l l u s t r a t i o n of the o p e r a t i o n . The

latest one shows that unusual illustrations are also



possible.

40

Exanple 4 . 9 Our s o l u t i o n t o t h e above problem.



retrieve (e. n a n e , e . s a l a r y ) where e . s a l a r y > 3 0 0 0 0



and d u r a t i o n ( e . s a l a r y ) >=2

and s i n g l e v a l u e d ( e . n a s e )



The singlevalued operation ensures the s e l e c t i o n of

o n l y t h o s e t u p l e s t h a t p o s s e s s d i s t i n c t domain v a l u e s in the

a t t r i b u t e s mentioned i n t h e t a r g e t l i s t . This s e p a r a t e s the

t u p l e o f Paul t h a t had combined with t h e t u p l e of F r e d . Ta-

b l e 21 shows t h e r e l a t i o n w i t h o u t the c l u t t e r of unexpected

conbinations.







TABLE 21

The D i s t i n c t - t u p l e Relation





NAME 1 SALARY







[6,7] george | [ 6 , 7 ] 35,000







[1,7] fred | [1,7] 45,000







[1,7] paul I [ 1,7] 45,000







[ 8 , n o w ] george | [8,now] 40,000

41

We list the operators along with the functions they

perforn, below. We denote relations by r, tenporal donains

by V, intervals by i and instants by t.



Operator It^s Function to compute

01. Existime (r) tenporal domain of a relation r.

02. Firstime (r) f i r s t v when properties do not change.

03. Lastime (r) l a s t v when properties do not change.

04. Finterval(v) first interval lev.

05. Linterval(v) l a s t interval lev.

06. Pinterval ( v , i ) interval i ' previous to i : i , i ' € v.

07. Ninterval(v,i) i n t e r v a l i ' next to i : i , i ' € v.

08. Finstant(i) f i r s t instant t e i .

09. Linstant(i) l a s t instant t € i .

010. P i n s t a n t ( i , t ) instant t' previous to t : t , t ' € i .

o i l . Ninstant(i,t) instant t ' next to t : t , t ' 6 i .

0I2. Duration (r) time-span of tenporal donain of r.

Tuple variables are typed by means of the operators,

closure (r) by S and singlevalued ( r ) .

42

i-2 BNF of the R e t r i e v e Statement

The temporal query language has been introduced i n f o r -

mally i n t h e previous s e c t i o n . e

W present a BNF [ 2 ] for our

grammar in t h i s s e c t i o n . Our BNF does not cover the syntax

of regular QUEL o p e r a t i o n s . The a v a i l a b i l i t y of t h e s e opera-

t i o n s i s i n d i c a t e d by t h e element in the f o l l o w -

ing. The reader i s r e f e r r e d t o the INGRES-QUEL manual [ 1 4 ]

f o r d e t a i l s concerning QUEL.

::= r e t r i e v e



::=

: : = 6 I i n t o | | i n t o

: : = | |

|

::= e | |

I |

::= |

::= =

::= f i n s t a n t ( ) I linstant() 1

p i n s t a n t (,) |

n i n s t a n t (,)

::= |

: : = =

::= f i n t e r v a l ( ) I Unterval() |

p i n t e r v a l (,) I

43





ninterval(,)

: : = 1

: : = =

: : = f i r s t i m e () |

l a s t i n e ()

: : = j

: : = =

: : = e x i s t i a e ()

: : = e | |

: : = =

: : = d u r a t i o n ()

: : = c l o s u r e ( ) by

: : = |

: : = | ,

: : = = |

,

: : = | ,

: : = € | where

: : = | and |

o r |

: : = | |

: : =

::= singlevalued()

: : =

44

: : * € | «hen

::= | -. | 1

0 |

::= [,] | | |

::=

: : s .

: : «

: : «

::» >

::«

::=

::=

::= | |



::= a | b 1 | z j A 1 B 1 •••• | Z

::= |

::= |

: : = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

::= I >

::= (

: : « )

45



ii-2 I l £ ^ ^ § § l 2 t h e Database



Updates a r e n e c e s s a r y t o a d a t a b a s e t o maintain i t s in-

tegrity. Updates may occur t o add new i n f o r m a t i o n , change

i n c o r r e c t r e c o r d s or d e l e t e e x t r a i n f o r m a t i o n . In t h i s s e c -

t i o n we d i s c u s s t h r e e o p e r a t i o n s . Append, D e l e t e and Change.

Append and D e l e t e o p e r a t e on the d a t a b a s e a s in QUEL.

In our e x t e n s i o n we permit temporal r e s t r i c t i o n s t o be im-

posed on t h e s e o p e r a t i o n s using t h e when c l a u s e . An update

u s i n g the when c l a u s e i s for i n f o r m a t i o n a l r e a d y e x i s t i n g in

the database.



Exanple 4 . 1 0 I n f o r m a t i o n c o n c e r n i n g Paul has been lost for

t h e p e r i o d [ 5 , 7 ] i n t h e employee r e l a t i o n . At t h i s time h i s

s a l a r y was $ 3 0 , 0 0 0 and he was working i n the S a l e s d e p a r t -

ment. Update t h e database,

range o f e i s employee

append (e.salary=30000, e.dept=sales)

where e.name=paul

when [ 5 , 7 ]



We i n t r o d u c e a new o p e r a t i o n t h a t a l l o w s updates to o c -



cur e f f e c t i v e some time i n t h e f u t u r e , i.e., t i m e > now.



Suppose Fred g i v e s n o t i c e at [ 5 , 5 ] stating his intention to



r e t i r e at [ 8 , 8 ] . I t i s necessary t o discontinue recording



information concerning Fred after [7,7]. This can be



achieved as follows.

46





Exanple 4 . 1 1 I l l u s t r a t i n g t h e c a s e d e s c r i b e d above,



range o f e i s employee



d e l e t e e where e.name=fred



effective [8,8]





Infornation e x i s t i n g in t h e d a t a b a s e can be changed i f



i t i s found t o be e r r o n e o u s . The c h a n g e s are nade u s i n g a



Change connand which nay be used i n the f o l l o w i n g nanner.





Exanple 4 . 1 2 Paul's salary had been raised to $ 2 8 , 0 0 0 at

[ 3 , 3 ] and h i s s t a r t i n g salary as the nanager of production

was 4 7 , 0 0 0 . Update P a u l ' s r e c o r d s -

range of e i s enployee



change ( e . s a l a r y = [ 3 , 4 ] 2 8 0 0 0 ; [ 8 , n o w ] 47000)

where e.nane=paul







ii-if BNF of t h e Update S t a t e n e n t s

We f o r n a l i z e t h e grannar f o r the update o p e r a t i o n s be-

low. We have a l r e a d y d e f i n e d t h e elenents ,

, , in the BNF [ 2 ] of t h e r e t -

r i e v e s t a t e n e n t and do n o t r e p e a t t h o s e d e f i n i t i o n s here.





::=

append () |



d e l e t e |

47





change ()

: : = | ,

::= =

::= | ;

::= |





: : = e | |



::= effective

: : = [,] |

: : =

: : =

::= |







f*-5 Aggregate Operations

e

W i n t r o d u c e two aggregate operations to supplement

t h o s e provided by QUEL. The summation of domain values of

an a t t r i b u t e must take i n t o account the period of validity

of t h a t i n f o r m a t i o n . This means t h a t the duration of a tem-

poral domain weights the information that i s v a l i d during

that time. By the same c o n s i d e r a t i o n , an average over

tenporal tuples nust be a tenporally weighted average.

Hence, we d e f i n e a t e n p o r a l l y weighted sun, tsum, and a

48

temporally weighted average, tavg. We discuss their

application in t h e examples below.





Exanple 4.13 What was t h e t o t a l amount of money e a r n e d by

John w h i l e he was w o r k i n g i n t h e d e s i g n d e p a r t m e n t ?

r a n g e of e i s employee



retrieve (total=tsu« (e.salary)) where e.name=john



and e.dept^design



Referring t o T a b l e 14, John e a r n e d $ 2 5 , 0 0 0 from [1,5],

a duration of f i v e u n i t s , and $ 3 0 , 0 0 0 from [ 6 , 7 ] , a duration

of two u n i t s . T h e r e f o r e , t h e computed t o t a l w i l l be $ 2 5 , 0 0 0

X 5 • $30,000 X 2 = $185,000.





Exanple 4 . 1 4 What was t h e a v e r a g e s a l a r y e a r n e d by John whi-

l e h e was w o r k i n g i n t h e d e s i g n d e p a r t m e n t ?



r a n g e of e i s employee

retrieve (mean=tavg ( e . s a l a r y ) ) where e.name=john

and e.dept=design





The d u r a t i o n for which J o h n worked in t h e design de-



partment i s 7 u n i t s . The t e m p o r a l a v e r a g e w i l l be computed



a s 185,000 / 7 = $25,000-

CHAPTER V

SEMANTICS OF OPERATIONS



HTQUEL i s an e x t e n s i o n of QUEL i n t h e f o l l o w i n g sense.

A QUEL query Q o p e r a t e s on a s t a t i c d a t a b a s e d t o produce a

r e l a t i o n r. A s t a t i c r e l a t i o n s can be i d e n t i f i e d by a tem-

poral relation s' with a t r i v i a l temporal domain c o n s i s t i n g

of o n l y one i n s t a n t , say, now. s ' i s c a l l e d t h e temporal

v a r i a n t of s . We can apply Q t o t h e temporal v a r i a n t d• of d

t o produce a v a r i a n t r ' of r u s i n g HTQUEL.



We n o d e l t i n e by a s e t of equidistant, discrete ins-



tants, [begin,now] = {0, 1 , 2 , . . . ,now} . e

W always refer to



c l o s e d i n t e r v a l s of t i n e . We i n t r o d u c e a t e n p o r a l t u p l e r e -



lational calculus applicable t o our n o d e l i n this section.



Gadia [ 1 3 ] p r o v i d e s a c o n p l e t e definition. We a l s o i n c l u d e



s e m a n t i c s of s o n e temporal queries.







5.JL gundamental Structures

In t h i s s e c t i o n we f o l l o w M a i e r ' s [ 9 ] n o t a t i o n . A tem-

poral r e l a t i o n a l s t r u c t u r e i s an 8 - t u p l e w h e r e , U = A l A 2 . . . A n i s t h e u n i v e r s a l s e t of

attributes, Doms i s t h e s e t of domains, don i s a napping don

: U —> Dons, S is a f i n i t e s e t of b i n a r y o p e r a t i o n s over









49

50

certain pairs of donains, R = (R1, R2,... ,Rn} is a database

schene, D = (r 1,r2,... ,rn} is a database over R such that ri

is a tenporal relation over Ri, u* is a union of U with the

set of attribute names and T = [begin,now] is the universe

of time instants.



In our notation, x, y, z, x1, y1, z1,..- are individual

variables that vary over temporal tuples; f, g, h, f1, g1,

hi,... denote formulas; e, el, e2,... stand for relational

expressions and v, v1, v2,... for temporal expressions-

Atomic formulas are of the form r (x) , x(A) e y(B), x (A)

9 c, c e y (B) and x C y. The atom r(x) means the temporal

tuple X belongs to r. The formula x (A) 8 y (B) , where 6 6 8

"-

and A, B € U * , are B-conparable. This means that the restric-

tion of the tenporal tuple x to attribute A is related to

temporal tuple y through the relation e. x C y means tempo-

ral domain of x is contained in temporal domain of y and on

the associated temporal donain, they are identical. More

conplex fornulas are obtained fron atonic fornulas by appli-



cations of - , A, V, 3, ¥.

Every tenporal donain v is considered to be a tenporal

expression. More conplex tenporal expressions are forned by

using -, U, D . If f (x) is a fornula with i the only free

variable, then ixf (x) is a tenporal expression. We think of

i as a qualifier which binds the variable x. We allow

51

fornulas of the forn x : v which expresses the fact that the

tenporal donain of x C v.

x

A relational expression is of the form { | f (x) J where

f (x) is a formula. This stands for a concrete relation (of

tuples X which satify f) .

An expression of the type {x | r (x) V s(x)} stands for

r U s. Notice that r U s makes no sense if r, s are rela-

tions over different schemes. This gives rise to the idea of

typing the occurence of a free variable in a formula. We

bind a strong type to a relational schema. Thus r (x) V s (x)

is allowed if r and s are over schema R.



Example 5.1 Let f (x) and g(y) be formulas such that rela-

y

tional expressions {x | f(x)} and { | g(y)} stand for r and

s respectively. A temporal relational algebraic expression

r[tdom (s)] is expressed as,

x

r[tdom(s)]= {x I ( : Jjg (y) ) A f (x)}







5.2 Tem£oral Predicates

Gadia [13] provides two predicates, univalued (x,r,S)

and maximal(x,r,S), to supplement his calculus. The meaning

of Univalued(x,r,S) is that the tuple x is contained in r

and is univalued in attributes of schema S. The Predicate

maximal (x,r,S) means that x is univalued over the schema S

52

in r and it is the maximal such tuple. Every tuple shown in

Table 14 is univalued in NAME. The tuple shown in Table 12

is maximal for NAME = George.

Gadia [13] models time by the real line. Hence, the op-

erations described by us to compute tenporal domains will

not always be defined in his model, e.g., frstinst ((2,5]) is

not defined. First, we change the temporality of Gadia's

calculus to that of ours. Then we increase the expressive

power of Gadia's calculus by adding the following predicates

(primitives) to it. These predicates have a natural meaning.

Tenporal Predicate Tenporal Operation



t1. pf tine (r) Frstine (r)



t2. pltine(r) Lastine (r)



t3. pf inter (v) Finterval(v)



t4. plinter (v) Linterval(v)



t5. ppinter (v,i) Pinterval (v,i)



t6. pninter(v,i) Ninterval(v,i)



t7. pfinst(i) Finstant (i)



t8. plinst (i) Linstant (i)



t9. ppinst (i) Pinstant (i ,t)



tlO. pninst(i) Ninstant (i,t)

53

5.3 Senantical Expressions

A r e t r i e v e statenent in QUEL r e t r i e v e s a relation (or a

tenporal domain). our objective i s t o s t a r t with a query

and give the corresponding r e l a t i o n a l expression (or tenpo-

r a l expression) for t h i s query in Gadia*s tenporal tuple r e -

lational calculus. This expression will then stand for the

sane r e l a t i o n (or tenporal donain).



Bzanple 5.2 The query of exanple 4 . 5 .

range of e i s enployee

range of el i s enployee

range of n i s nanagenent

r e t r i e v e i n t o hitax (e.nane,e.salary)

where e.salar7>25000

and e1.nane=george

and e1.salary>25000

and n.nanager>fred

and n.dept^production



The senantics of the query of Exanple 5.2 expressed in

t u p l e r e l a t i o n a l calculus due t o Gadia [ 1 3 ] , using Haier*s

notation [ 9 ] , i s ,

( z (nane, salary) iBeBelB'C

enployee (e) G enployee (el) & nanagenent (n)

5 X (nane) = e (nane)

6 X (salary) = e (salary)

54





E e (salary) > 25000

5 el(nane) = george

e e1(salary) > 25000

5 n (nanager) = fred

6 m (dept) = production ) }



We c o n s i d e r a query t o compute a temporal domain.



Exanple 5.3 The query of exanple 4.1

range of n i s management

retrieve (v^ezistine (n.manager))

where n.nanager=george

and m.dept=design

The t e n p o r a l expression for t h i s query i s given below,

in ( nanagenent (n)

C n (nanager) = george

G m(dept) = design )

This expression i s of the form ixf (x), i . e . , i t i s the tem-

p o r a l domain of the s e t of a l l temporal t u p l e s x over R such

t h a t f (x) i s t r u e .

The semantics of a query to compute the f i r s t interval

in the temporal domain of George's tenure as the manager of

t h e design department i s as f o l l o w s .

55

pf i n t e r ( Im ( management (m)



& m (manager) = george

G m(dept) = design ) )





The when c l a u s e imposes a temporal r e s t r i c t i o n on a r e -

lation r. Let us c o n s i d e r a query which i n v o l v e s the use of

t h e when c l a u s e .





Exanple 5 . 4 Who were t h e managers of p r o d u c t i o n f o r t h e per-

iod [6,8]?

range of m i s management

retrieve (m.manager) where n.dept=production

when [ 6 , 8 ]





The s e n a n t i c s o f t h i s query i s as p r e s e n t e d below.



{ X (nanager) I 3n ( management (n)



5 X (manager) = m (manager)



C m (dept) = p r o d u c t i o n

6 m : [6,8] ) }





Example 5 . 5 The guery of example 4.6.

range o f e i s employee

range of m i s management

retrieve closure ( e . nane, e. d e p t , e . s a l a r y ) by name

where e.dept=production



and m-manager=John



and m.dept=design

56







The c l o s u r e o p e r a t i o n i l l u s t r a t e d i n Example 5 . 5 can be



understood i n terms of t h e p r e d i c a t e maximal a s shown below.



[ X (name,dept,salary) I3«3el3m (



employee (e) C employee ( e l ) 5 management (m)



& X (name) = e l (name)



& X (dept) = e l (dept)



8 X (salary) = el (salary)

S e(dept) = production



5 m (manager) = John



6 m(dept) = design

& univalued(e,enployee,name)

& maximal(el,employee,name)

6 e C el ) ) }

CHAPTER VI



SOME IMPLEMENTATIONAL DETAILS



Snodgrass [ 1 2 ] i s able to p r o v i d e a complete semantics

f o r e a c h o p e r a t i o n t h a t i s s u p p o r t e d by Tquel. e

W do not a t -

tempt t o nor would be a b l e t o p r o v i d e a complete senantics

of our o p e r a t i o n s i n terms o f p r e d i c a t e s a s he d o e s . Howev-

er, we do p r o v i d e a l g o r i t h m s t o i n t e r p r e t t h e o p e r a t i o n s de-

s c r i b e d by u s -



We w i l l g i v e t h e i n t e r n a l representation of a temporal

domain. T h i s i s a s e q u e n c e of r e a l numbers, e . g . , v = [5,7]

U [9,9] U [12,15] has the internal representation

. An i n t e r v a l i s then a sequence of two r e a l

numbers, e.g., [ 3 , 5 ] = . An i n s t a n t [ 3 , 3 ] i s t h e s e -

quence . We c o n t i n u e t o use v t o d e n o t e temporal do-

mains, i t o d e n o t e i n t e r v a l s and t t o d e n o t e time instants.



In t h i s s e c t i o n we g i v e some implementational details

for some t e m p o r a l operations in the forn of algorithms.

These a l g o r i t h m s are w r i t t e n in a PASCAL-like l a n g u a g e .









57

58

6-1 Aiaorithns for Tenporal

Operations

e

W have presumed the e x i s t e n c e of the following prini-

t i v e s t o support the tenporal operators. e

W l i s t the prini-

t i v e s along with the function they perforn, below.



grj,nit^ye £o Conpute

p i . tdon(r) tenporal donain of r

p2. frstsnap(r) f i r s t t i n e when properties do not change

p3. lastsnap(r) f i n a l t i n e when properties do not change

p4. f r s t i n t e r ( v ) f i r s t i n t e r v a l of v

p5. neztinter(v) nezt i n t e r v a l of v

p6. f r s t i n s t (i) f i r s t instant of i

p7. l a s t i n s t ( i ) l a s t instant of i



The primitive pi scans a relation r and accunulates the

tanporal donain for those tuples that s a t i s f y the conditions

of s e l e c t i o n inposed i n the query. The primitives p2, p3 ac-

cunulate that tenporal donain of the relation for which

there i s no change in the donain values for a t t r i b u t e s of

the tuple.

The following i s a l i s t of tenporal operators that are

in one-to-one correspondence with certain p r i n i t i v e s ,



Tenporal Operator corresponds to Pyrinitive

c1. Bzistine(r) tdon(r)

c2. Firstine(r) frstsnap(r)

59



c3. L a s t i m e (r) lastsnap(r)



c4. Finterval(v) f r s t i n t e r (v)



c 6 . F i n s t a n t (i) frstinst(i)



c6. Linstant(i) lastinst(i)





We w i l l not p r e s e n t algorithms for t h e above opera-

tions. The f o l l o w i n g a l g o r i t h m s d e f i n e t h e r e s t of t h e oper-

ations. The p a r a m e t e r e r r f l a g s t h e s u c c e s s , o r f a i l u r e , of

the operation. I t is reset to false if t h e operation fails.





procedure P i n t e r v a K v ^ i ^ e r r ) ;

{ A p r o c e d u r e t o compute t h e t i m e i n t e r v a l i' occurring just

before t h e time i n t e r v a l i , i,i' e t e m p o r a l domain v }





if (V i s empty) then begin;



err := f a l s e ; return end;



i1 : = frstinter (v) ;



if (i1 = i) then begin;



P i n t e r v a l i s empty; r e t u r n end;



while ( i 1 -•= empty and i 1 -•= i ) do;



12 := i 1 ;



i 1 := n e x t i n t e r (v)



end d o ;



if (i1 = i) then P i n t e r v a l := 12;



else e r r :« false;



return ;

60





pcocedare n i n t e r v a l ( v , i , e r r ) ^

( A procedure t o conpute t h e t i n e i n t e r v a l i* occurring

j u s t a f t e r the t i n e i n t e r v a l i , i , i ! € tenporal donain • )



if (V i s enpty) then begin;

e r r := f a l s e ; return end;

i 1 z~ f r s t i n ^ r (v);

while ( i 1 -•= enpty and i1 -^^ i ) do;

i 1 := n e z t i n t e r (v)

end do;

if (i1 = i ) then

i 1 := n e z t i n t e r (v);

if (i1 i s enpty) then err := f a l s e ;

e l s e N i n t e r v a l := i 1 ;

return;



procedure L i n t e r v a l ( v ^ e r r ) ;

{ A procedure t o conpute the l a s t t i n e i n t e r v a l i 6 v )



if (V i s empty) then begin;

e r r := f a l s e ; return end;

i 1 := f r s t i n t e r (v);

while ( i l -.= enpty) do;

12 := 1 1 ;

11 := n e z t i n t e r (•)

61

end do;

L i n t e r v a l (v) := 12;

return ;





Ergcedure_PinstantXi^tjE^rrl.i

{ A procedure t o compute the time i n s t a n t t ' occurring

j u s t before the time i n s t a n t t , t , t ' € time i n t e r v a l t )



if ( i i s empty) then begin;

err := f a l s e ; return end;

t 1 := t - 1;

if (t1 > f r s t i n s t (i) & t1 f r s t i n s t (i) S t1 l a s t i n s t (v2) ) t h e n FIXT2(v2, v1) ;

return;





p r o c e d u r e f i x t 2 ( v i , v j) ;





{ I f t e m p o r a l domain Ti i s e x h a u s t e d copy the



remaining e l e m e n t s of temporal domain Tj t o T )



v i := N i n t e r v a l ( T i , v i ) ;



if (vi i s empty) then



begin ;



t2 := l a s t i n s t (vj) ;



i n c l u d e [ t 1 , t 2 ] in T;



COPY(Tj,vj); return



end;



( Check i f t h e new v i i n t e r s e c t s vj )



if ( f r s t i n s t (vi) lastinst (v2) ) then

begin;

ti = lastinst(v2) ^ 1 ;

t2 = lastinst(vi) ;

v1 = Ct1,t2];

GETCOHP (v2,T2) ; MINOS (vi ,v2)

end;

GETCOMP (v1,T1) ; MINUS (v 1, v2) ;

return;



procedure getcomp (vi,Ti) ;



vi := Ninterval (Ti,vi) ;

if (vi is empty and 1 = 1 ) then terminate processing;

else if (vi is empty and i = 2) then

begin;

include v1 in T; C0PY(T,T1)

end;

return ;



begin; [ main procedure }

vi := frstinter(TI);

v2 := frstinter(T2);

HINUS(v1,v2)

end;

end DIFFERENCE;

CHAPTER VII

CONCLOSIONS



HTQOEL allows the retrieval of tuples that possess com-

mon tenporal domains and belong to relations participating

in the guery. It does not possess the capability of retriev-

ing tuples that have disjoint temporal domains. For exanple,

a guery of the kind, "Find pairs of employees who had the

same last name and worked in the same departnent at sone

tine", cannot be handled in our fornulation. This is because

a tuple is reguired to be homogeneous in time in our model.

This guery illustrates relations that are heterogeneous in

tine. Research in this area could result in a theory where

relations could have radically different properties from the

ones described in this work.

Resolution of tine may vary from relation to relation.

For example, an employee relation may address time in terms

of dates as units, whereas, a temporal relation to record

say, temperatures and pressures, may possess a finer resolu-

tion. Queries that refer to two relations that possess

different time resolutions may require the selection of the

finer of the two resolutions. In such a case it would be

necessary to assume that the properties of the coarser

resolution will hold over the finer resolution. The general





71

72

problen of increasing the resolution of temporal relations

needs to be researched.



Other problens which might be examined include re-

searching a unique representation for fuzzy tuples and

further researching the effect of the new tuple typing oper-

ations such as singlevalued.

Clifford and Warren £3] have suggested the use of in-

tensional logic to build a senantics of tine in databases.

Its relationship to our work is another area which can be

explored.

A temporal database is a historical database where up-

dates only add information. We expect such a database to

have fewer concurrency problems. An analysis of this aspect

could also help to arrive at some useful conclusions.

An implementation of this model can prove to be an in-

teresting exercise. For example, a temporal relation is not

a perfectly rectangular object. Certain attributes in a tem-

poral relation may have a greater frequency of update than

others. For every tuple belonging to the relation, the size

of the tuple would tend to grow because of these attributes.

This may require selection of a new kind of data structure.

Storage reguirements also need to be considered. Information

concerning the recent past nay be stored on an on-line

storage device while older infornation nay be archived.

73

The C r o s b y t o n S o l a r Power P r o j e c t (CSPP) maintains a

d a t a b a s e t o a n a l y z e system perfornance and n o n i t o r the func-

t i o n i n g of t h e c o n t r o l s y s t e m . I n f o r m a t i o n i s r e t r i e v e d by

s o f t w a r e programs from an a r c h i v e d d a t a b a s e . In our o p i n i o n ,

a u s e f u l procedure may be t o s t o r e the r e l e v a n t system and

c o n t r o l parameters o n - l i n e . These parameters may i n c l u d e the

maximum and meein t e m p e r a t u r e s , p r e s s u r e s and e f f i c i e n c y mea-

s u r e m e n t s , e n e r g y consumption e t c . , r e c o r d e d per day. Such

an o n - l i n e t e m p o r a l d a t a b a s e can be queried using a t e n p o r a l

guery language which a l s o provides statistical analysis

functions. e

W f e e l t h a t our r e p r e s e n t a t i o n of time i s suffi-

c i e n t t o s e r v e t h e needs of u s e r s l i k e t h e CSPP. However, we

would a d v i s e c a u t i o n in implementing t h i s raoiel t o monitor

t h e b e h a v i o r of a c o n t r o l s y s t e m . We f e e l t h a t d i s c r e t e time

i n s t a n t s may not model c o n t r o l b e h a v i o r reliably.

REFERENCES





^' S ? f o I'^l A - R e l a t i o n a l _ H o d e l _ o f ^ a t a f o r Large Shared

Data^an)^. CACH, v 1 3 , n o . 6 , Jun7^19707"pi 3 7 7 ^ 8 7 7 "



2. Backus J . T h e _ S i n t a x _ a n d ^ S e n a n t i c s o f the Proposed

j a t g r n a t x o n a 1 Algebraic_Languaqe o f ' t h e Zurich ACi-GAHB

Conference. P r o c . I n t . Conf. I n f o r n a t i o n P r o c e s s i M 7 ~

UNESCO, P a r i s 1959, pp 1 2 5 - 1 3 2 .



3 . C l i f f o r d J . and Warren D. F o r n a l ^ S e n a n t i c s of T i n e i n

Databases. C

A M TODS, v 8, pp 214-26a7



a. Bolour A . , Andetson T . L . , Dckeyser L . J . and Hong H.K.T.

I S L £ , £ 2 l £ ^ L - I i " e _ i p _ I n f o c n a t i o n _ P r o c e s s i n g ^ A Survgy.

S i g A r t N e w s l e t t e r , n o . 8 0 , Apr. 19827 PP 2 8 - 5 5 7



5 . J o n e s S . , Mason P. and Stanper R. LEGOL ? . 0 _ : J ^

R e l a t i o n a l S p e c i f i c a t i o n Language f o r Conplex'Ru^es.

I n f o r n a t i o n S y s t e m s , v ^7 n o . U, 1 9 7 9 , pp 28-5*87



5- J o n e s S. and Mason P. Handling t h e T i n e d i n e n s i o n ^n

Databases. P r o c . of t h e I n t e r n a t i o n a l Conference'on

D a t a b a s e s , B r i t i s h Conputer S o c i e t y . Oniv. of Aberdeen,

J u l . 1 9 8 0 , pp 6 6 - 8 3 .



7 . Held G . D . , S t o n e b r a k e r W.R. and Wong E . , INGRES_-.i^

R e l a t i o n a l Database Systen. P r o c o f the~7976~National

Conputer C o n f . , v 4 4 , 19767 pp 4 0 9 - 4 1 6 .



8. allnan J.D. P r i n c i p l e s of Database S y s t e n s .

Conputer S c i e n c e P r e s s , 1 9 8 3 . "



9. flaier D. The Theory o f R e l a t i o n a l Databases.

Conputer S c i e n c e P r e s s , 1 9 8 3 .



10. Snodgrass R. Monitoring D i s t r i b u t e d S y s t e n s ; A

R e l a t i o n a l Approach. PhD. D i s s . , Conputer S c i e n c e

D e p a r t n e n t , C a r n e g i e Mellon O n i v . , Dec 1982-



1 1 . Snodgrass R. The Tenporal Query Language TQDEL.

C

P r o c . t h i r d A M S i g A c t - S i g S o d Synp. on P r i n c i p l e s of

Database S y s t e n s , Waterloo, O n t a r i o , Canada, Apr. 1984,

pp 2 0 4 - 2 1 2 .







74

75

12- Snodgrass R. Formal Semantics of a Temporal Query

Language. (Submitted for"Publication) , 19847

13. Gadia S.K. Homogeneous Temporal Databases.

(Under Preparation), 19847

14. INGRES. INGRES Query Language v 2.0 Reference_Manual^

Relational Technology, Jan 1983.



Related docs
Other docs by yurtgc548
项目概述
Views: 0  |  Downloads: 0
雅比斯的禱告The Prayer of Jabez
Views: 0  |  Downloads: 0
無投影片標題
Views: 0  |  Downloads: 0
温故校园
Views: 0  |  Downloads: 0
没有幻灯片标题
Views: 0  |  Downloads: 0
氫能源
Views: 0  |  Downloads: 0
By registering with docstoc.com you agree to our
privacy policy

You are almost ready to download!

You are almost ready to download!