Optimizing path expressions using navigational algebraic operators
Object-oriented database systems are more and more used in real applications due to their rich data model and query language mixing declarative assertions and navigations. Queries may frequently involve multiple collection traversais (i.e., path expression). Moreover, quantifiers like exist, any, all can also be included inside path expressions. These bring new challenges for object query optimization. In order to efficiently optimize these queries, we define the concept of annotated path expression and introduce two navigational algebraic operators, which mix nicely with classical object algebra. We introduce advanced query optimization techniques using the proposed extended algebra including a general framework and new rewriting rules for integrating navigational operators and traditional set-oriented operators. We also compare different navigation strategies for evaluating path expressions.
KeywordsQuery Processing User Query Database Schema Query Optimization Object Query
Unable to display preview. Download preview PDF.
- [AFS89]S. Abiteboul, P. Fischer, and H.J. Schek, editors. Nested Relations and Complex Object in Databases.#361 in Lecture Notes in Computer Science, Springer-Verlag, 1989.Google Scholar
- [BLD89]F. Bancilhon, S. Cluet, C. Delobel. A Query Language for the O2 Object-Oriented Database System. In 2nd Int'l workshop on Database Systems, San Diego, California, 1992.Google Scholar
- [BMG93]J.A. Blakeley, W.J.McKenna, and G. Graefe, Experiences building the open OODB optimizer. In proceedings of ACM Sigmod, 1993.Google Scholar
- [GGT95]G. Gardarin, J.R. Gruser and Z.H. Tang, A Cost Model for Clustered Object-Oriented Databases. In Proceedings of 21st International Conference on Very Large Databases, Zurich, 1995.Google Scholar
- [GGT96]G. Gardarin, J.R. Gruser and Z.H. Tang, Cost-based Selection of Path Expression Processing Algorithm in Object-Oriented Databases, In Proceedings of 22nd International Conference on Very Large Databases, 1996.Google Scholar
- [Gra93]G. Graefe, Query Evaluation Techniques for Large Databases. In ACM Computer Surveys, Vol.25, No.2, June 1993.Google Scholar
- [HNR68]P.E. Hart, N.J. Nilsson and B. Raphael. A formed basis for the heuristic determination of minimum cost paths, IEEE transactions on SSC, 4, 1968.Google Scholar
- [KBZ86]R. Krishnamurty, H. Boral, C. Zaniolo. Optimization nonrecursive queries, In Proceedings of 12th International Conference on Very Large Databases, 1986.Google Scholar
- [KM90]A. Kemper and G. Moerkotte. Advanced query processing in object bases using access support relations. In Proceedings of 16th International Conference on Management of Data, 1990.Google Scholar
- [SC89]E. J. Shekita and M. J. Carey. A performance evaluation of pointer-based joins. In Proceedings of SIGMOD Int. Conf. on Management of Data, New Jersey, May 1990.Google Scholar
- [Val87]P. Valduriez, Optimization of complex queries using join indices, Database Eng. IEEE 9(4) Special Issue on query optimization, 1987.Google Scholar
- [VD91]S.L. Vandenberg and D.J. Dewitt. Algebraic Support for Complex Objects with Arrays, Identity and Inheritance. In Proceeding of ACM SIGMOD Int'l Conf. On Management of Data, Denver, 1991.Google Scholar