Aggregation in temporal databases
Temporal database systems extend relational database systems to support time-varying information. One important such extension is support for time-varying aggregate functions, such as a time-varying average. Our research will show that temporal aggregates may be specified in a semantically well defi...
Main Author: | |
---|---|
Other Authors: | |
Language: | en_US |
Published: |
The University of Arizona.
1999
|
Subjects: | |
Online Access: | http://hdl.handle.net/10150/288950 |
id |
ndltd-arizona.edu-oai-arizona.openrepository.com-10150-288950 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-arizona.edu-oai-arizona.openrepository.com-10150-2889502015-10-23T05:11:39Z Aggregation in temporal databases Kline, Rodger Nickels Snodgrass, Richard T. Computer Science. Temporal database systems extend relational database systems to support time-varying information. One important such extension is support for time-varying aggregate functions, such as a time-varying average. Our research will show that temporal aggregates may be specified in a semantically well defined manner yet be efficiently implemented as simple extensions to relational databases. We introduce a taxonomy of temporal aggregation, based on a study of all major temporal query languages containing aggregates. The taxonomy categorizes the expressiveness and functionality of temporal aggregation. Based on this taxonomy, we introduce extensions to TSQL2 for temporal aggregation. The proposed language constructs allow one to express the variety of features identified in the taxonomy. We briefly discuss the semantics for the temporal aggregate language extension. We introduce an operator for evaluating temporal aggregates in a temporal relational algebra; the operator was designed to implement the tuple semantics. We show that theoretically, the most efficient evaluation of a temporal aggregate over a relation with n unique timestamps requires Θ(n log n) time, with O(n log n) space in any decision tree algorithm. We provide an example algorithm meeting these requirements, utilizing a 2-3 tree. Based on the requirements for evaluation of the algebraic operator, we introduce a series of main memory algorithms for evaluating temporal aggregates, including the aggregation tree, k-ordered aggregation tree, the chalkboard algorithm, the linked-list algorithm, and show how to perform aggregation using a 2-3 tree. The algorithms exhibit different applicability depending on aspects of the input relation, including sort order, percentage of long-lived tuples, and number of tuples. We also provide an algorithm which executes using only a user-limited amount of memory, the paging aggregation tree. We characterize the effectiveness of these algorithms based on an empirical study of their performance. 1999 text Dissertation-Reproduction (electronic) http://hdl.handle.net/10150/288950 9927439 .b39558848 en_US Copyright © is held by the author. Digital access to this material is made possible by the University Libraries, University of Arizona. Further transmission, reproduction or presentation (such as public display or performance) of protected items is prohibited except with permission of the author. The University of Arizona. |
collection |
NDLTD |
language |
en_US |
sources |
NDLTD |
topic |
Computer Science. |
spellingShingle |
Computer Science. Kline, Rodger Nickels Aggregation in temporal databases |
description |
Temporal database systems extend relational database systems to support time-varying information. One important such extension is support for time-varying aggregate functions, such as a time-varying average. Our research will show that temporal aggregates may be specified in a semantically well defined manner yet be efficiently implemented as simple extensions to relational databases. We introduce a taxonomy of temporal aggregation, based on a study of all major temporal query languages containing aggregates. The taxonomy categorizes the expressiveness and functionality of temporal aggregation. Based on this taxonomy, we introduce extensions to TSQL2 for temporal aggregation. The proposed language constructs allow one to express the variety of features identified in the taxonomy. We briefly discuss the semantics for the temporal aggregate language extension. We introduce an operator for evaluating temporal aggregates in a temporal relational algebra; the operator was designed to implement the tuple semantics. We show that theoretically, the most efficient evaluation of a temporal aggregate over a relation with n unique timestamps requires Θ(n log n) time, with O(n log n) space in any decision tree algorithm. We provide an example algorithm meeting these requirements, utilizing a 2-3 tree. Based on the requirements for evaluation of the algebraic operator, we introduce a series of main memory algorithms for evaluating temporal aggregates, including the aggregation tree, k-ordered aggregation tree, the chalkboard algorithm, the linked-list algorithm, and show how to perform aggregation using a 2-3 tree. The algorithms exhibit different applicability depending on aspects of the input relation, including sort order, percentage of long-lived tuples, and number of tuples. We also provide an algorithm which executes using only a user-limited amount of memory, the paging aggregation tree. We characterize the effectiveness of these algorithms based on an empirical study of their performance. |
author2 |
Snodgrass, Richard T. |
author_facet |
Snodgrass, Richard T. Kline, Rodger Nickels |
author |
Kline, Rodger Nickels |
author_sort |
Kline, Rodger Nickels |
title |
Aggregation in temporal databases |
title_short |
Aggregation in temporal databases |
title_full |
Aggregation in temporal databases |
title_fullStr |
Aggregation in temporal databases |
title_full_unstemmed |
Aggregation in temporal databases |
title_sort |
aggregation in temporal databases |
publisher |
The University of Arizona. |
publishDate |
1999 |
url |
http://hdl.handle.net/10150/288950 |
work_keys_str_mv |
AT klinerodgernickels aggregationintemporaldatabases |
_version_ |
1718103934736793600 |