Abstract
We present a technique for distributed evaluation of the deductive database language datalog, that is, prolog without function symbols. Datalog is both a powerful extension of relational database query languages like sql and a suitable language for constructing expert systems. Both of these types of applications tend to be computationally complex and to exhibit parallelism of the kinds known as Or parallelism and All-solutions And parallelism. We therefore expect large speedup by exploiting this parallelism.
The lack of function symbols ensures a finite model, in spite of presence of recursive clauses. We therefore discuss how to ensure termination while retaining completeness. Our distributed implementation uses a top/down interpretation strategy and is based on the problem-heap paradigm and dynamic load balancing. Tests show up to 14.2 times speedup, obtained on a Transputer network containing 16 Transputers.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
L. L. Alty and M. J. Coombs: Expert Systems, Concepts and Examples. NCC Publications, 1984.
K. R. Apt, H. A. Blair and A. Walker: Towards a Theory of Declarative Knowledge. In J. Minker (ed.): Foundations of Deductive Databases and Logic Programming, edt. J. Minker. Morgan Kaufmann Publ. 1988.
F. Bancilhon, R. Ramakrishnan: An Amateur’s Introduction to Recursive Query Processing Strategies. Proceedings of the ACM SIGMOD ‘86, Washington D.C., 1986.
J. S. Conery: Parallel Execution of Logic Programs. Kluwer Academic Publishers, 1987.
R. Davis, B. Buchanan and E. Shortliffe: Production Rules as a Representation for a Knowledge-Based Consultation Program. Artificial Intelligence 8 (1), 1977, 15–45.
D. DeGroot: Restricted AND-Parallelism. International conference on Fifth Generation Computer Systems 1984.
S. Ganguly, A. Silberschatz and S. Tsur: A Framework for the Parallel Processing of Datalog Queries. Department of Computer Science, The University of Texas at Austin, March 1989.
P. Gronning, T.Q. Nielsen and H.H. Lovengreen: Development of an algorithm for Dynamic Load Balancing. Technical Report. Dept. of Computer Science, Technical University of Denmark.
L.S. Jensen, H.H. Lovengreen: Distributed Interpretation of DATALOG. Technical Report. Dept of Computer Science, Technical University of Denmark.
Y. Kiyoki et al: A Stream-Oriented Approach to Parallel Processing for Deductive Databases. 5th International Worpshop on Database Machines, 87.
P. Moller Nielsen, Jurgen Staunstrup: Problem-heap: A Paradigm for Multiprocessor Algorithms. Parallel Computing, Vol. 4, pp.63-74,1987.
J.F. Nilsson: On The Compilation of a Domain-Based Prolog. Proceedings of IFIP’83, Paris, 1983.
D. E. Smith, M. R. Genesereth and M. L. Ginsberg: Controlling Recursive Inference. Artificial Intelligence 30 (1986), 343-389.
J. D. Ullman: Principles of Knowledge-Base Systems. Computer Science Press, 1988.
L. Vieille: Recursive axioms in Deductive Databases: The Query/Subquery approach. Proc. First Intl. Conference Expert Database Systems, Charleston, 1986.
O. Wolfson: Parallel Bottom-up Evaluation of Datalog Programs by Load Sharing. Technical report no. 564, TECHNION - Israel Institute of Technology, Computer Science Department, June 1989.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1990 Springer-Verlag/Wien
About this chapter
Cite this chapter
Jensen, L.S., Kaae, E.J. (1990). Distributed Evaluation of the Datalog Query Language. In: Tjoa, A.M., Wagner, R. (eds) Database and Expert Systems Applications. Springer, Vienna. https://doi.org/10.1007/978-3-7091-7553-8_29
Download citation
DOI: https://doi.org/10.1007/978-3-7091-7553-8_29
Publisher Name: Springer, Vienna
Print ISBN: 978-3-211-82234-0
Online ISBN: 978-3-7091-7553-8
eBook Packages: Springer Book Archive