Results 1 - 10
of
18
Cache Conscious Algorithms for Relational Query Processing
- In Proceedings of the 20th VLDB Conference
, 1994
"... The current main memory (DRAM) access speeds lag far behind CPU speeds. Cache memory, made of static RAM, is being used in today's architectures to bridge this gap. It provides access latencies of 2--4 processor cycles, in contrast to main memory which requires 15--25 cycles. Therefore, the performa ..."
Abstract
-
Cited by 75 (2 self)
- Add to MetaCart
The current main memory (DRAM) access speeds lag far behind CPU speeds. Cache memory, made of static RAM, is being used in today's architectures to bridge this gap. It provides access latencies of 2--4 processor cycles, in contrast to main memory which requires 15--25 cycles. Therefore, the performance of the CPU depends upon how well the cache can be utilized. We show that there are significant benefits in redesigning our traditional query processing algorithms so that they can make better use of the cache. The new algorithms run 8%--200% faster than the traditional ones. 1 Introduction The DRAM access speeds have not reduced much compared to the CPU cycle time reduction resulting from the improvements in VLSI technology. Cache memories, made of fast static RAM, help alleviate this disparity by exploiting the spatial and temporal locality in the data accesses of a program. However, programs with poor access locality waste significantly many cycles transferring the data to and from th...
Incremental Computation and Maintenance of Temporal Aggregates
- Proc. of ICDE
, 2001
"... We consider the problems of computing aggregation queries in temporal databases, and of maintaining materialized temporal aggregate views efficiently. The latter problem is particularly challenging since a single data update can cause aggregate results to change over the entire time line. We introdu ..."
Abstract
-
Cited by 61 (4 self)
- Add to MetaCart
We consider the problems of computing aggregation queries in temporal databases, and of maintaining materialized temporal aggregate views efficiently. The latter problem is particularly challenging since a single data update can cause aggregate results to change over the entire time line. We introduce a new index structure called the SBtree, which incorporates features from both segment-trees and B-trees. SB-trees support fast lookup of aggregate results based on time, and can be maintained efficiently when the data changes. We also extend the basic SB-tree index to handle cumulative (also called moving-window) aggregates. For materialized aggregate views in a temporal database or warehouse, we propose building and maintaining SB-tree indices instead of the views themselves. 1.
Adaptive Parallel Aggregation Algorithms
- In ACM SIGMOD
, 1995
"... Aggregation and duplicate removal are common in SQL queries. However, in the parallel query processing literature, aggregate processing has received surprisingly little attention; furthermore, for each of the traditional parallel aggregation algorithms, there is a range of grouping selectivities whe ..."
Abstract
-
Cited by 39 (2 self)
- Add to MetaCart
Aggregation and duplicate removal are common in SQL queries. However, in the parallel query processing literature, aggregate processing has received surprisingly little attention; furthermore, for each of the traditional parallel aggregation algorithms, there is a range of grouping selectivities where the algorithm performs poorly. In this work, we propose new algorithms that dynamically adapt, at query evaluation time, in response to observed grouping selectivities. Performance analysis via analytical modeling and an implementation on a workstation-cluster shows that the proposed algorithms are able to perform well for all grouping selectivities. Finally, we study the effect of data skew and show that for certain data sets the proposed algorithms can even outperform the best of traditional approaches. 1 Introduction SQL queries are replete with aggregate and duplicate elimination operations. One measure of the perceived importance of aggregation is that in the proposed TPCD benchmark...
Efficient Evaluation of Aggregates on Bulk Types
- In Proc. Int. Workshop on Database Programming Languages
, 1995
"... A new method for efficiently evaluating queries with aggregate functions is presented. More specifically, we introduce a class of aggregate queries where traditional query evaluation strategies in general require O(n ) time and space in the size of the (at most two) input relations. For this cl ..."
Abstract
-
Cited by 25 (14 self)
- Add to MetaCart
A new method for efficiently evaluating queries with aggregate functions is presented. More specifically, we introduce a class of aggregate queries where traditional query evaluation strategies in general require O(n ) time and space in the size of the (at most two) input relations. For this class of aggregate queries our approach needs at most O(n log n) time and linear space. Further, our approach deals not only with relations but with general bulk types like sets, bags, and lists.
Scalable Algorithms for Large Temporal Aggregation
, 2000
"... The ability to model time-varying natures is essential to many database applications such as data warehousing and mining. However, the temporal aspects provide many unique characteristics and challenges for query processing and optimization. Among the challenges is computing temporal aggregates, whi ..."
Abstract
-
Cited by 16 (3 self)
- Add to MetaCart
The ability to model time-varying natures is essential to many database applications such as data warehousing and mining. However, the temporal aspects provide many unique characteristics and challenges for query processing and optimization. Among the challenges is computing temporal aggregates, which is complicated by having to compute temporal grouping. In this paper, we introduce a variety of temporal aggregation algorithms that overcome major drawbacks of previous work. First, for small-scale aggregations, both the worst-case and average-case processing time have been improved significantly. Second, for large-scale aggregations, the proposed algorithms can deal with a database that is substantially larger than the size of available memory.
Efficient Algorithms for Large-Scale Temporal Aggregation
- IEEE TRANS. ON KNOWLEDGE AND DATA ENGINEERING
, 2003
"... The ability to model time-varying natures is essential to many database applications such as data warehousing and mining. However, the temporal aspects provide many unique characteristics and challenges for query processing and optimization. Among the challenges is computing temporal aggregates, whi ..."
Abstract
-
Cited by 12 (2 self)
- Add to MetaCart
The ability to model time-varying natures is essential to many database applications such as data warehousing and mining. However, the temporal aspects provide many unique characteristics and challenges for query processing and optimization. Among the challenges is computing temporal aggregates, which is complicated by having to compute temporal grouping. In this paper, we introduce a variety of temporal aggregation algorithms that overcome major drawbacks of previous work. First, for small-scale aggregations, both the worst-case and average-case processing time have been improved significantly. Second, for large-scale aggregations, the proposed algorithms can deal with a database that is substantially larger than the size of available memory. Third, the parallel algorithm designed on a shared-nothing architecture achieves scalable performance by delivering nearly linear scale-up and speed-up, even at the presence of data skew. The contributions made in this paper are particularly important because the rate of increase in database size and response time requirements has out-paced advancements in processor and mass storage technology.
Compensation-Based On-Line Query Processing
- In Proc. ACMSIGMOD International Conference on Management of Data
, 1992
"... It is well known that using conventional concurrency control techniques for obtaining serializable answers to long-running queries leads to an unacceptable drop in system performance. As a result, most current DBMSs execute such queries under a reduced degree of consistency, thus providing non-seria ..."
Abstract
-
Cited by 10 (1 self)
- Add to MetaCart
It is well known that using conventional concurrency control techniques for obtaining serializable answers to long-running queries leads to an unacceptable drop in system performance. As a result, most current DBMSs execute such queries under a reduced degree of consistency, thus providing non-serializable answers. In this paper, we present a new and highly concurrent approach for processing large decision support queries in relational databases. In this new approach, called compensation-based query processing, concurrent updates to any data participating in a query are communicated to the query's on-line query processor, which then compensates for these updates so that the final answer reflects changes caused by the updates. Very high concurrency is achieved by locking data only briefly, at the tuple-level, while still delivering transaction-consistent answers to queries. Compensation-based query processing can co-exist with conventional query processing, and a cost model similar to t...
Effective Temporal Aggregation using Point-based Trees
, 1999
"... . Temporal databases introduce the concept of time into underlying data, and provide built-in facilities that allow users to store and retrieve time-varying data. The aggregation in temporal databases, that is, temporal aggregation is an extension of conventional aggregation on the domain and ra ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
. Temporal databases introduce the concept of time into underlying data, and provide built-in facilities that allow users to store and retrieve time-varying data. The aggregation in temporal databases, that is, temporal aggregation is an extension of conventional aggregation on the domain and range of aggregates to include time concept. Temporal aggregation is important for various applications, but is very expensive. In this paper, we propose a new tree structure for temporal aggregation, called PA-tree, and aggregate processing method based on the PA-tree. We show that the time complexity of the proposed method is better than those of the existing methods. The time complexity of the proposed method is shown to be indeed the lower bound of the problem. We perform comparative experiments and show the performance advantage of our proposed method in practice. 1 Introduction While conventional database systems store the most recent snapshots of the real world, temporal datab...
Architectural Considerations For Parallel Query Evaluation Algorithms
"... Parallelism is key to high performance relational database systems. Since there are several parallel architectures suitable for database systems, a few interesting problems arise, mostly from an emphasis on the differences among the architectures. Specifically, in the literature, differences rather ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
Parallelism is key to high performance relational database systems. Since there are several parallel architectures suitable for database systems, a few interesting problems arise, mostly from an emphasis on the differences among the architectures. Specifically, in the literature, differences rather than similarities between the architectures are pointed out, and the specific details of a particular architecture, crucial to high performance, are generally ignored. In this thesis we have attempted to remedy this situation by emphasizing the similarities and a deeper understanding of two popular parallel architectures, shared nothing and shared memory, from a database perspective. We show that there is complementarity and similarity in the two architectures by showing that software shared-memory support can be used to improve performance on shared-nothing hardware and by showing that shared-nothing software can run on shared-memory hardware with performance comparable to that of "native" ...

