The EXODUS extensible DBMS project: an overview
Readings in object-oriented database systems
SIGMOD '90 Proceedings of the 1990 ACM SIGMOD international conference on Management of data
Rule-based optimization and query processing in an extensible geometric database system
ACM Transactions on Database Systems (TODS)
Extensible/rule based query rewrite optimization in Starburst
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
Larch: languages and tools for formal specification
Larch: languages and tools for formal specification
A rule-based query optimizer with multiple search strategies
Data & Knowledge Engineering
Rule languages and internal algebras for rule-based optimizers
SIGMOD '96 Proceedings of the 1996 ACM SIGMOD international conference on Management of data
Cost-based optimization for magic: algebra and implementation
SIGMOD '96 Proceedings of the 1996 ACM SIGMOD international conference on Management of data
Database management systems
On optimizing an SQL-like nested query
ACM Transactions on Database Systems (TODS)
A Modular Query Optimizer Generator
Proceedings of the Sixth International Conference on Data Engineering
Control of an Extensible Query Optimizer: A Planning-Based Approach
VLDB '93 Proceedings of the 19th International Conference on Very Large Data Bases
A Rule-Based Query Rewriter in an Extensible DBMS
Proceedings of the Seventh International Conference on Data Engineering
The Volcano Optimizer Generator: Extensibility and Efficient Search
Proceedings of the Ninth International Conference on Data Engineering
Building query optimizers with combinators
Building query optimizers with combinators
Query unnesting in object-oriented databases
SIGMOD '98 Proceedings of the 1998 ACM SIGMOD international conference on Management of data
Rule-based query optimization, revisited
Proceedings of the eighth international conference on Information and knowledge management
Optimizing object queries using an effective calculus
ACM Transactions on Database Systems (TODS)
Reasoning about nonlinear system identification
Artificial Intelligence
Visual COKO: a debugger for query optimizer development
Proceedings of the 2002 ACM SIGMOD international conference on Management of data
Inferring Function Semantics to Optimize Queries
VLDB '98 Proceedings of the 24rd International Conference on Very Large Data Bases
Optimizing Real-Time Equational Rule-Based Systems
IEEE Transactions on Software Engineering
Exploiting Interactions among Query Rewrite Rules in the Teradata DBMS
DEXA '08 Proceedings of the 19th international conference on Database and Expert Systems Applications
Journal of Artificial Intelligence Research
Hi-index | 0.00 |
Rule-based optimizers are extensible because they consist of modifiable sets of rules. For modification to be straightforward, rules must be easily reasoned about (i.e., understood and verified). At the same time, rules must be expressive and efficient (to fire) for rule-based optimizers to be practical. Production-style rules (as in [15]) are expressed with code and are hard to reason about. Pure rewrite rules (as in [1]) lack code, but cannot atomically express complex transformations (e.g., normalizations). Some systems allow rules to be grouped, but sacrifice efficiency by providing limited control over their firing. Therefore, none of these approaches succeeds in making rules expressive, efficient and understandable.We propose a language (COKO) for expressing an alternative form of input to a rule-based optimizer. A COKO transformation consists of a set of declarative (KOLA) rewrite rules and a (firing) algorithm that specifies their firing. It is straightforward to reason about COKO transformations because all query modification is expressed with declarative rewrite rules. Firing is specified algorithmically with an expressive language that provides direct control over how query representations are traversed, and under what conditions rules are fired. Therefore, COKO achieves a delicate balance of understandability, efficiency and expressivity.