Abstract
In this paper we present the design of an optimiser for the object-oriented database P/FDM. We explore the approach of using a navigational query language, based on Shipman's original Daplex language [Sh 81] for the optimisation. The advantage of this is that it fits the navigational style of querying very well, but it is also optimisable. The optimisation is based on the equivalence of most Daplex queries to ZF-expressions as pointed out in [PG 90].
As we developed the P/FDM system, we started to store methods in the database, holding them as Prolog code generated from Daplex. We have taken the approach of asking the database to reveal the definition of a method to the optimiser as privileged code. We have also been greatly helped by using a functional programming approach which holds methods in a declarative form, and thus makes it much easier to combine and transform them, using Prolog.
Preview
Unable to display preview. Download preview PDF.
References
J. Banerjee, et al., “Data Model Issues For Object-Oriented Application”, ACM Transactions on Office Information Systems, 5(1).
Umeshwar Dayal, “Queries and Views in an Object-Oriented Data Model”, Proc. 2nd Inter. Workshop on Database Programming Languages, pp80–120, June 1989.
O. Deux, et al., “The Story of O2”, IEEE Transactions on Knowledge and Data Engineering, 2(1), March, 1990.
Umeshwar Dayal, Nathan Goodman, et al., “Local Query Optimization in MULTIBASE: A System for Heterogeneous Distributed Databases”, Technical Report CCA-81-11, Computer Corporation of America, Cambridge, MA 02142.
Nigel Derrett, Ming-Chien Shan, “Rule-Based Query Optimisation in IRIS”, Research Report, Hewlett-Packard Labs, 1988.
D. Fishman, et al., “IRIS: An object-oriented database management system”, ACM Transactions on Database Systems, 5(1).
J.C. Freytag, “A Rule-Based View of Query Optimisation”, ACM SIGMOD 1987, pp173–80.
P.M.D Gray, K.G. Kulkarni, and N.W. Paton, “Object-Oriented Databases: a Semantic Data Model Approach”, Prentice-Hall 1991 (to appear).
Goetz Graefe and David Maier, “Query Optimization in Object-Oriented Database Systems: A Prospectus”, Advances in Object-Oriented Database Systems: Proc. OODBS-II, 1988.
P.M.D Gray, “Logic, Algebra and Databases”, Ellis Horwood, 1984.
P.M.D Gray, D.S.Moffat, and N.W. Paton, “A Prolog Interface To A Functional Data Model Database”, in “Advance in Database Technology”, Proc. EDBT Conf., pp 35–8, Schmidt, Ceri and Missikoff (eds), Springer Verlag, 1988.
P.M.D. Gray and G.J.L Kemp, “An OODB with Entity-Based Persistence: A Protein Modelling Application”, Research and Development in Expert Systems VII (Proc. Expert Systems'90 Conf.), pp203–14, T. Addis and R. Muir (eds.), Cambridge University Press, 1990.
Zhuoan Jiao, “Modules and Temporary Data in P/FDM”, Technical Report AUCS/TR9016, Aberdeen University, Scotland.
Zhuoan Jiao, “Query Optimisation In An Object-Oriented Database Using Prolog”, Technical Report AUCS/TR9115, Aberdeen University, Scotland.
F. Manola, U. Dayal, “PDM: An Object-Oriented Data Model”, Proc. Inter. Workshop on Object-Oriented Database Systems, 1986.
D. Maier and J. Stein, “Development and Implementation of an ObjectOriented DBMS”, Research Directions in Object-Oriented Programming, B. Shriver and P. Wegner (eds.), 1987.
N.W. Paton and P.M.D. Gray, “Identification of Database Objects by Key”, Advances in Object-Oriented Database Systems: Proc. OODBS-II, pp280–85, K.R. Dittrich (ed.), Springer-Verlag, 1988.
N.W. Paton and P.M.D. Gray, “Optimising and Executing Daplex Queries Using Prolog”, The Computer Journal, pp547–556, Vol.33, No.6, 1990.
P.G. Selinger, et al., “Access Path Selection in a Relational Database Management System”, Proc. ACM SIGMOD79 Conf., P.A. Bernstein (ed.).
D.E.Smith and M. R.Genesereth, “Ordering Conjunctive Queries”, Artificial Intelligence, Vol.26, pp 171–215, 1985.
D. Shipman, “The Functional Data Model and the Data Language Daplex”, ACM Transactions on DB Systems, Vol.6, No.1, 1981.
M. Stonebraker, et al., “Third Generation Database System Manifesto”, Object-Oriented Database: Analysis, Design and Construction, Proc. IFIP TC2-2 Conf., W. Kent and R. Meersman (eds), North-Holland, 1990.
Phil Trinder, Daniel Chan, David Harper, “Improving List Comprehension Database Queries”, CS Report Series, CSC 90/R4, Glasgow University.
D.H. Warren, “Efficient Processing of Interactive Relational Database Queries Expressed in Logic”, Proc. 7th VLDB, 1981.
Stanley B. Zdonik, “Data Abstraction and Query Optimization”, Advances in Object-Oriented Database Systems, Proc. OODBS-II, K.R. Dittrich (ed), 1988.
S. Zdonik and D. Maier, “Fundamentals of Object-Oriented Databases”, Readings in Object-Oriented Database Systems, S. Zdonik and D. Maier (eds.), 1990.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Jiao, Z., Gray, P.M.D. (1991). Optimisation of methods in a navigational query language. In: Delobel, C., Kifer, M., Masunaga, Y. (eds) Deductive and Object-Oriented Databases. DOOD 1991. Lecture Notes in Computer Science, vol 566. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55015-1_2
Download citation
DOI: https://doi.org/10.1007/3-540-55015-1_2
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55015-0
Online ISBN: 978-3-540-46646-8
eBook Packages: Springer Book Archive