Query Processing and Optimization in Object Relational Databases
Query evaluation; Query planning and execution
In an (object) relational database management system (DBMS) query processing comprises all steps of processing a user submitted query including its execution to compute the requested result. Usually, a user query – for example a SQL query – declaratively describes what should be computed. Then, it is the responsibility of the DBMS to determine how to compute the result by generating a (procedural) query execution plan (QEP) that is semantically equivalent to the original query. Query processing also includes the execution of this generated QEP.
While generating a QEP for a user submitted query the DBMS explores a large number of potential execution alternatives. To choose the best ones among those alternatives requires one or more (query) optimization phases.
In the late 1960s and early 1970s it became clear that existing DBMSs were too complex and cumbersome to use. The programmer was forced to...
- 2.Freytag JC. The basic principles of query optimization in relational database management systems. In: Proceedings of the IFIP 11th World Computer Congress; 1989. p. 801–7.Google Scholar
- 3.Freytag JC, Maier D, Vossen G, editors. Query processing for advanced database systems. San Mateo: Morgan Kaufmann; 1994.Google Scholar
- 8.Selinger PG, Astrahan MM, Chamberlin DD, Lorie RA, Price TG. Access path selection in a relational database management system. In: Proceedings of the ACM SIGMOD International Conference on Management of Data; 1979. p. 23–34.Google Scholar
- 9.Yu CT, Meng W. Principles of database query processing for advanced applications. San Francisco: Morgan Kaufmann; 1998.Google Scholar