Algebraic optimization of object-oriented query languages

Catriel Beeri, Yoram Kornatzky*

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

11 Scopus citations

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 query 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 are defined using an abstract definition of the notion of data collection which includes familiar and novel types of bulk data. In particular, we integrate neatly 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 the known laws for transforming relational queries. We go beyond FP by allowing data structures containing functions, thus supporting the optimization of programs required in database programming environments.

Original languageEnglish
Pages (from-to)59-94
Number of pages36
JournalTheoretical Computer Science
Volume116
Issue number1
DOIs
StatePublished - 2 Aug 1993

Fingerprint

Dive into the research topics of 'Algebraic optimization of object-oriented query languages'. Together they form a unique fingerprint.

Cite this