MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  1

Download:
Download as a PDF | Download as a PS
by Ralf Hartmut Gting, Claudia Freundorfer, Ludger Becker, Stefan Dieker, Holger Schenk, Praktische Informatik Iv, Fernuniversitt Hagen
http://voss.fernuni-hagen.de/gebiete/pi4/papers/SecondoQP.ps.gz
Add To MetaCart

Abstract:

Abstract: In an extensible database system, evaluation of a query plan is done in cooperation between a collection of operator implementation functions and a component of the DBMS that we call the query processor. Basically, the query processor constructs an operator tree for the query plan and then calls an evaluator function which traverses the tree, calling the operator functions in each node. This seemingly simple strategy is complicated by the fact that operator functions must be able to call for the evaluation of parameter expressions (e.g. predicates), and must be able to process streams of objects in a pipelined manner. Although query processing along these lines is implemented in most database systems, and certainly in all extensible database systems, the details of programming the parameter passing, organizing the interaction between stream operators, etc. are tricky, and seem to be buried in the code of the respective systems. We are not aware of any simple, crisp, clear published exposition of how one could implement such a query processor. This is what the paper offers. Moreover, we feel the solution presented here is particularly simple, elegant, and general. For example, it is entirely independent from the data model being implemented, admits arbitrary parameter functions, and allows one to mix freely stream operators and other operators. The construction of the operator tree, shown in the paper, includes complete type checking and resolution of overloading. The query processor has been implemented within the Secondo system; the source code is available.

Citations

365 The implementation of POSTGRES – Stonebraker, Rowe, et al. - 1990
138 The Volcano Optimizer Generator : Extensibility and Efficient Search – McKenna - 1993
113 Starburst Midflight: As the dust clears – Haas, Chang, et al. - 1990
91 GENESIS: An Extensible Database Management System – Batory, Barnett, et al. - 1988
70 Object-Relational DBMSs: The next great wave – Stonebraker, Moore - 1996
61 Volcano - An Extensible and Parallel Query Evaluation System – Graefe - 1994
59 The design of the E programming language – Richardson, Carey, et al. - 1993
51 Programming Constructs for Database System Implementation in EXODUS – RICHARDSON, CAREY - 1987
50 The DASDBS Project: Objectives, Experiences, and Future Prospects – Schek, Paul, et al. - 1990
34 Of Objects and Databases: A Decade of Turmoil – Carey, DeWitt - 1996
28 Implementation concepts for an extensible data model and data language – BATORY, LEUNG, et al. - 1988
15 Gral: An Extensible Relational Database System for Geometric Applications – Gting - 1989
13 Second-Order Signature: A Tool for Specifying Data Models – Gting - 1993
7 The GraphDB Algebra: Specification of Advanced Data Models with SecondOrder Signature – Becker, Gting - 1995