Download:
|
by Lane B. Warshaw, Daniel P. Miranker
http://www.arlut.utexas.edu/~warshaw/papers/Sigmod98.ps
Add To MetaCart
Abstract:
We present an overview and initial performance assessment of a rule-based query optimizer written in VenusDB. VenusDB is an active-database rule language embedded in C++. Following the developments in extensible database query optimizers, first in rule-based form followed by optimizers written as object-oriented programs, the VenusDB optimizer avails the advantages of both. To date, development of rule-based query optimizers have included the definition and implementation of custom rule languages. Thus, extensibility required detailed understanding and often further development of the underlying search mechanism of the rule system. Objectoriented query optimizers appear to have achieved their goals with respect to a clear organization and encapsulation of an optimizer's elements. They do not, however, provide for the concise, declarative expression of domain specific heuristics. Our experience demonstrates that a rule-based query optimizer developed in VenusDB can be well structured, flexible, and demonstrate good performance. We compare a relational optimizer developed with Volcano and a functionally identical optimizer developed with VenusDB. The results demonstrate comparable performance on small queries with few joins, while the VenusDB optimizer scales better and outperforms Volcano on larger joinarity queries. Since we did not have to develop a specialized rule language or consider application specific programming constructs, the source code for the optimizer is small and straightforward, about one-third the size. Similar code comparisons with an object-based optimizer, the VenusDB optimizer reveals similar benefit.
Citations
|
3677
|
Design patterns: elements of reusable object-oriented software
– Gamma, Helm, et al.
- 1995
|
|
698
|
Parallel program design: a foundation
– Chandy, Misra
- 1988
|
|
549
|
Soar: An architecture for general intelligence
– Laird, Newell, et al.
- 1987
|
|
504
|
A Complexity Measure
– McCabe
- 1976
|
|
148
|
The EXODUS Optimizer Generator
– Graefe, DeWitt
- 1987
|
|
138
|
The Volcano Optimizer Generator : Extensibility and Efficient Search
– McKenna
- 1993
|
|
83
|
Extensible/Rule Based Query Rewrite Optimization
– Pirahesh, Hellerstein, et al.
- 1992
|
|
45
|
The integration of rule systems and database systems
– Stonebraker
- 1992
|
|
38
|
Assessing the Maintainability of XCON-in-RIME: Coping with Problems of a very Large Rule Base
– Soloway, Bachant, et al.
- 1987
|
|
32
|
A performance comparison of the Rete and TREAT algorithms for testing database rule conditions
– WANG, HANSON
- 1992
|
|
27
|
Processing queries for first-few answers
– Miranker
- 1996
|
|
26
|
On the performance of lazy matching in production systems
– Miranker, Brant, et al.
- 1990
|
|
20
|
OPT++ : an objectoriented implementation for extensible database query optimization
– DeWitt
- 1999
|
|
12
|
Prairie: A rule specification framework for query optimizers
– Das, Batory
- 1995
|
|
10
|
A new approach to modularity in rule-based programming
– al
- 1994
|
|
9
|
Universal subgoaling
– Laird
- 1984
|
|
6
|
Evaluating automatable measures of software development
– Basili
- 1979
|
|
6
|
A Case Study of Venus and a Declarative Bases for Rule Modules
– Warshaw, Miranker
- 1996
|
|
4
|
Selective Indexing Speeds Production Systems
– Obermeyer, Miranker, et al.
- 1995
|
|
4
|
An Overview of the VenusDB Active Multidatabase System
– Miranker, Obermeyer
- 1996
|
|
2
|
Evaluating triggers using decision trees
– Obermeyer, Miranker
- 1997
|
|
2
|
Livny and R.Ramakrishnan. The Case for Enhanced Abstract
– Sesshadri
|
|
1
|
R1("XCON") at age 12: Lessons for an elmentary school achiver
– McDermott
|
|
1
|
zsu, Adriana Munoz, Duana Szafron. "An Extensible Query Optimizer for an Objectbase Management System
– Tamer
- 1995
|