Abstract
The ROCK and ROLL database system cleanly integrates deductive and object-oriented capabilities by defining an imperative programming language, ROCK, and a declarative, deductive language, ROLL, over a common object-oriented (OO) data model. Existing techniques for evaluation and optimization of deductive languages fail to address key requirements imposed by ROLL such as: strict typing; placement of deductive methods (predicates) within classes; encapsulation; overriding and late binding. This paper describes the task of implementing an evaluator and optimizer for ROLL, explaining how existing implementation techniques for deductive languages were adapted to meet these requirements and extended to support novel types of optimization.
Similar content being viewed by others
References
F. Bancilhon and R. Ramakrishnan. An Amateur's Introduction to Recursive Query Processing Strategies. In Proceedings of the ACM Conference on the Management of Data (SIGMOD), Washington DC, May 1986.
M. Barja, N. Paton, A. A. A. Fernandes, M. H. Williams, and A. Dinn. An Effective DOOD Through Language Integration. In Proceedings of the 20th International Conference on Very Large Databases (VLDB), Santiago, Chile, August 1994.
C. Beeri, S. Naqvi, R. Ramakrishnan, O. Shmueli, and S. Tsur. Sets and Negation in a Logic Database Language (LDL1). In Proceedings of the ACM Symposium on the Principles of Database Systems (PODS), San Diego, California, March 1987.
C. Beeri and R. Ramakrishnan. On the power of magic. In Proceedings of the ACM Symposium on the Principles of Database Systems (PODS), San Diego, California, March 1987.
M. Carey and D. DeWitt. The EXODUS Extensible DBMS Project: An Overview. In S. Zdonik and D. Maier, editors, Readings in Object-Oriented Databases. Morgan Kaufmann, 1990.
S. Ceri, G. Gottlob, and L. Tanca. Logic Programming and Databases. Surveys in Computer Science. Springer-Verlag, 1990.
S. Ceri and L. Tanca. Optimization of systems of algebraic equations for evaluating Datalog queries. In Proceedings of the 13th International Conference on Very Large Databases (VLDB), August 1987.
G. Dobbie and R. Topor. A Model for Sets and Multiple Inheritance in deductive Object-Oriented Systems. In Proceedings of the 3rd International Conference on Deductive and Object-Oriented Databases (DOOD), 1993.
R. Helm. Detecting and Eliminating Redundant Derivations in Logic Knowledge Bases. In Proceedings of the 1st International Conference on Deductive and Object-Oriented Databases (DOOD), Kyoto, Japan, December 1989.
M. Kifer and E. Lozinskii. On Compile-Time Query Optimization In Deductive Databases By Means Of Static Filtering. ACM Transactions on database Systems (TODS), 15(3), September 1990.
W. Kim. A Model Of Queries For Object-Oriented Databases. In Proceedings of the 15th International Conference on Very Large Databases (VLDB), Amsterdam, The Netherlands, 1989.
A. Lefebvre and L. Vieille. On Deductive Query Evaluation in the DedGin* System. In Proceedings of the 1st International Conference on Deductive and Object-Oriented Databases (DOOD), Kyoto, Japan, December 1989.
A. Levy, I. Mumick, and Y. Sagiv. Query Optimization by Predicate Move-Around. In Proceedings of the 20th International Conference on Very Large Databases (VLDB), Santiago, Chile, August 1994.
C. C. Low, H. Lu, and B. C. Ooi. Efficient Access Methods in Deductive and Object-Oriented Databases. In Proceedings of the 2nd International Conference on Deductive and Object-Oriented Databases (DOOD), 1991.
N. Paton and A. Abdelmoty. An Object Store for the DOOD Object Model. Technical report, Heriot-Watt University, 1993.
R. Lanzelotte and P. Valduriez and M. Zaït. Optimization of Object-Oriented Recursive Queries Using Cost Controlled Strategies. In Proceedings of the ACM Conference on the Management of Data (SIGMOD), 1992.
R. Ramakrishnan. Magic templates, a spellbinding approach to logic evaluation. In International Conference on Logic programming (ICLP), 1988.
J. Richardson, M. Carey, and D. Schuh. The Design of the E Programming Language. ACM Transactions on Programming Languages and Systems (TOPLAS), 15(3), 1993.
G. Shaw and S. Zdonik. Object-Oriented Queries: Equivalence and Optimization. In Proceedings of the 1st International Conference on Deductive and Object-Oriented Databases (DOOD), Kyoto, Japan, December 1989.
D. Straube and T. Öszu. Execution Plan Generation for Database Programming Languages. In Proceedings of the 2nd International Conference on Deductive and Object-Oriented Databases (DOOD), 1991.
J. Ullman. Principles of Database and Knowledge Based Systems (2 vols). Computer Science Press, 1988.
P. Valduriez and S. Danforth. Query optimization for Database Programming Languages. In Proceedings of the 1st International Conference on Deductive and Object-Oriented Databases (DOOD), Kyoto, Japan, December 1989.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Dinn, A., Paton, N., Williams, M.H. et al. The Implementation of a Deductive Query Language Over an OODB. Journal of Systems Integration 7, 231–261 (1997). https://doi.org/10.1023/A:1008227303817
Issue Date:
DOI: https://doi.org/10.1023/A:1008227303817