ACM Home Page
Please provide us with feedback. Feedback
Changing the rules: transformations for rule-based optimizers
Full text PdfPdf (1.65 MB)
Source International Conference on Management of Data archive
Proceedings of the 1998 ACM SIGMOD international conference on Management of data table of contents
Seattle, Washington, United States
Pages: 61 - 72  
Year of Publication: 1998
ISBN:0-89791-995-5
Also published in ...
Authors
Mitch Cherniack  Department of Computer Science, Brown University, Providence, RI
Stan Zdonik  Department of Computer Science, Brown University, Providence, RI
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGART: ACM Special Interest Group on Artificial Intelligence
SIGMOD: ACM Special Interest Group on Management of Data
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 1,   Downloads (12 Months): 29,   Citation Count: 8
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/276304.276311
What is a DOI?

ABSTRACT

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.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
 
3
M. Chemiack Translating queries into combinators. September 1996.
 
4
5
 
6
 
7
 
8
G. Graefe. The Cascades framework for query optimization. Data Engineering Bulletin, 18(3): 19-29, September 1995.
 
9
 
10
11
 
12
J.-S. Lee, K.-E. Kim, and M. Cherniack. A COKO compiler. Available at htrp ://www. cs.brown.edu/softwareJcokokola/coko.tar.Z, 1996.
 
13
14
15
 
16
 
17
18


Collaborative Colleagues:
Mitch Cherniack: colleagues
Stan Zdonik: colleagues