An architecture for query optimization

  • Authors:
  • Arnon Rosenthal;David Reiner

  • Affiliations:
  • Sperry Research Center, Sudbury, Massachusetts;Sperry Research Center, Sudbury, Massachusetts

  • Venue:
  • SIGMOD '82 Proceedings of the 1982 ACM SIGMOD international conference on Management of data
  • Year:
  • 1982

Quantified Score

Hi-index 0.00

Visualization

Abstract

We describe an optimizer for relational queries to databases stored as flat files and Codasyl networks. We include sophisticated manipulations on a broad range of direct access structures (DAS's). To achieve this with minimum additional code, we allow operations like sort, scan, and join to apply to DAS's, and categorize indexes and other DAS's in terms of the operations which can be performed on them. Our storage model, based on indivisible units of access and a small set of associated physical operators, provides a uniform interface to both relational and Codasyl storage mechanisms. The optimizer derives a sequence of internal data structures at successively more detailed levels. For a given query, a graph representing an overview of alternative joins is constructed, and then used to derive a physical graph which considers the physical attributes (location and sort order) of the data objects involved. Using cost predictions and other heuristics, the optimizer prunes the physical graph to produce a final access strategy tree. This layered approach and reliance on primitive operators make explicit (and permit changes to) the universe of possible strategies for the query at hand, and ease extension of the optimizer to new storage structures.