A General Purpose Rule Language as the Basis of a Query Optimizer

  • Authors:
  • Lane Warshaw;Daniel Miranker;Tao Wang

  • Affiliations:
  • -;-;-

  • Venue:
  • A General Purpose Rule Language as the Basis of a Query Optimizer
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present an overview and initial performance assessment of a rule-based query optimizer written in Venus, a general purpose rule language embedded in C++. Venus introduces a declarative form of structured rule programming that relates directly to nested transaction models. Venus includes a component for specifying the physical schema of its internal data structures'' and the equivalent of a query optimizer for optimizing the evaluation of the rule''s antecedents with respect to the schema. To date, development of rule-based query optimizers have included the definition and implementation of custom rule languages motivated by syntactic limitations and anticipated performance problems had a general purpose rule languages been used. Our experience demonstrates that a rule-based query optimizer can be well structured using Venus and that the optimizing compiler yields code that performs competitively with specialized systems. Since we did not have to develop a specialized rule language or consider application specific programming constructs, the source code for the optimizer is relatively quite small and straight-forward.