Rule-based optimization and query processing in an extensible geometric database system

  • Authors:
  • Ludger Becker;Ralf Hartmut Güting

  • Affiliations:
  • Univ. Gesamthochschule Siegen, Siegen, Germany;Fern Univ. Hagen, Hagen, Germany

  • Venue:
  • ACM Transactions on Database Systems (TODS)
  • Year:
  • 1992

Quantified Score

Hi-index 0.00

Visualization

Abstract

Gral is an extensible database system, based on the formal concept of a many-sorted relational algebra. Many-sorted algebra is used to define any application's query language, its query execution language, and its optimiztion rules. In this paper we describe Gral's optimization component. It provides (1) a sophisticated rule language—rules are transformations of abstract algebra expressions, (2) a general optimization framework under which more specific optimization algorithms can be implemented, and (3) several control mechanisms for the application of rules. An optimization algorithm can be specified as a series of steps. Each step is defined by its own collection of rules together with a selected control strategy.The general facilities are illustrated by the complete design of an example optimizer—in the form of a rule file—for a small nonstandard query language and an associated execution language. The query language includes selection, join, ordering, embedding derived values, aggregate functions, and several geometric operations. The example shows in particular how the special processing techniques of a geometric database systems, such as spatial join methods and geometric index structures, can be integrated into query processing and optimization of a relational database system. A similar, though larger, optimizer is fully functional within the geometric database system implemented as a Gral prototype.