Abstract
Advanced database applications demand new data modeling constructs beyond those available in relational databases. These include both new data structures, e.g. arrays and quadtrees, and an integration with the object-oriented programming paradigm. Declarative object-oriented languages transfer the burden of choosing an efficient execution plan to the database query optimizer. The lack of a generally accepted object-oriented data model and the trend towards extensible systems demand an extensible framework for object-oriented query optimization. We suggest such an algebraic optimization framework which is based on the computational metaphor of processing bulk data. Bulk data is defined using an abstract definition of the notion of data collection which includes familiar and novel types of bulk data. In particular, we neatly integrate object-oriented notions such as object-identity and user-defined methods. To obtain generally applicable results we use an FP-like language in which programs are constructed from primitive functions using a fixed set of functional forms. The latter abstract common patterns of processing data collections. The resulting algebra of programs generalizes for any data collection known laws for transforming relational queries.
Research partially supported by grants 2545, 2633 of the Israeli Ministry of Science.
Preview
Unable to display preview. Download preview PDF.
References
S. Abiteboul. Towards a deductive object-oriented database language. In Proc. First Intl. Conf on Deductive and Object-oriented databases, pages 419–438, Kyoto, Japan, December 1989.
S. Abiteboul and R. Hull. IFO: a formal semantic database model. ACM Transactions on Database Systems, 12(4):525–565, December 1987.
F.E. Allen and J. Cocke. A catalogue of optimizing transformations. In R. Rustin, editor, Design and optimization of compilers, pages 1–30, Prentice-Hall, 1971.
J. Backus. Can programming be liberated from the von Neumann style? A functional style and its algebra of programs. Communications of the ACM, 21(8):613–641, August 1978.
F. Bancilhon, T. Briggs, S. Khoshafian, and P. Valduriez. FAD, a powerful and simple database language. In Proc. Intl. Conf. on Very Large Databases, pages 97–105, 1987.
J. Banerjee, W. Kim, and K.-C. Kim. Queries in object-oriented databases. In Proc. Intl. Conf. on Data Engineering, February 1988.
D.S. Batory, J.R. Barnett, J.F. Garza, K.P. Smith, K. Tsukuda, B.C. Twichell, and T.E. Wise. GENESIS: a project to develop and extesible database management system. In Proc. of the Intl. Workshop on Object-Oriented Database Systems, pages 207–208, 1986.
O.P. Buneman and R.E. Frankel. FQL — a functional query language. In ACM SIGMOD Intl. Conf. on Management of Data, pages 52–57, 1979.
R.M. Burstall and J. Darlington. A transformation system for transforming recursive programs. Journal of the ACM, 24(1):44–67, January 1977.
M.J. Carey, D.J. DeWitt, D. Frank, G. Graefe, J.E. Richardson, E.J. Shekita, and M. Muralikrishna. The architecture of the EXODUS extensible DBMS. In Proc. of the Intl. Workshop on Object-Oriented Database Systems, pages 52–65, 1986.
M.J. Carey, D.J. DeWitt, and S.L. Vandenberg. A data model and query language for Exodus. In ACM SIGMOD Intl. Conf. on Management of Data, pages 413–423, 1988.
S. Cluet, C. Delobel, C. Lecluse, and P. Richard. Reloop, an algebra based query language for an object-oriented database system. In First Intl. Conf. on Deductive and Object-Oriented Databases, pages 294–313, Kyoto, Japan, December 1989.
U. Dayal. Of nests and trees: a unified approach to processing queries that contain nested subqueries, aggregates, and quantifiers. In Proc. Intl. Conf. on Very Large Data Bases, pages 197–208, 1987.
U. Dayal. Queries and views in an object-oriented data model. In Second Intl. Workshop on Database Programming Languages, pages 80–102, 1989.
J.C. Freytag. A rule-based view of query optimization. In ACM SIGMOD Intl. Conf. on Management of Data, pages 173–180, May 1987.
J.C. Freytag. Translating Relational Queries into Iterative Programs. PhD thesis, Harvard University, September 1985.
J.C. Freytag and N. Goodman. On the translation of relational queries into iterative programs. ACM Transactions on Database Systems, 14(1):1–27, March 1989.
J.S. Givler and R.B. Kieburtz. Schema recognition for program transformations. In ACM Symp. on Lisp and Functional Programming, pages 74–84, 1984.
J. Goguen, J. Thathcher, and E. Wagner. An initial algebra approach to the specification, correctness and implementation of abstract data types. In R. Yeh, editor, Current Trends in Programming Methodology, IV, pages 80–149, Prentice-Hall, 1978.
G. Graefe and D.J. DeWitt. The EXODUS optimizer generator. In ACM SIGMOD Intl. Conf. on Management of Data, pages 160–172, 1987.
A. Jhingran. A performance study of query optimization algorithms on a database system supporting procedures. In Proc. Intl. Conf. on Very Large Data Bases, pages 88–99, 1988.
W. Kim. On optimizing an SQL-like nested query. ACM Transactions on Database Systems, 7(3):443–469, September 1982.
B. Liskov, A. Snyder, R. Atinson, and C. Schaffert. Abstraction mechanisms in CLU. Communications of the ACM, 20(8):564–576, August 1977.
D. Maier, J. Stein, A. Otis, and A. Purdy. Development of an object-oriented DBMS. In OOPSLA'86 Proc., pages 472–482, ACM, New York, 1986.
P. O'Brien, B. Bullis, and C. Schaffert. Persistent and shared objects in Trellis/Owl. In Proc. First Intl. Workshop on Object-oriented Database Systems, September 186.
S.L. Osborn. Identity, equality and query optimization. In K.R. Dittrich, editor, Proc. Second Intl. Workshop on Object-Oriented Database Systems, pages 346–351, September 1988.
J.W. Schmidt. Some high level language constructs for data of type relation. ACM Transactions on Database Systems, 2(3):247–261, September 1977.
G. Shaw and S. Zdonik. An object-oriented query algebra. Data Engineering, 12(3):29–36, September 1989.
M. Stonebraker, A. Anton, and E. Hanson. Extending a database system with procedures. ACM Transactions on Database Systems, 2(3):350–376, September 1987.
J.D. Ullman. Principles of Database and Knowledge-Base Systems. Computer Science Press, 1988.
P. Valduriez. Join indices. ACM Transactions on Database Systems, 12(2):218–452, June 1987.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1990 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Beeri, C., Kornatzky, Y. (1990). Algebraic optimization of object-oriented query languages. In: Abiteboul, S., Kanellakis, P.C. (eds) ICDT '90. ICDT 1990. Lecture Notes in Computer Science, vol 470. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-53507-1_71
Download citation
DOI: https://doi.org/10.1007/3-540-53507-1_71
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-53507-2
Online ISBN: 978-3-540-46682-6
eBook Packages: Springer Book Archive