A new paradigm for parallel and distributed rule-processing

This paper is concerned with the parallel evaluation of datalog rule programs, mainly by processors that are interconnected by a communication network. We introduce a paradigm, called data-reduction, for the parallel evaluation of a general datalog program. Several parallelization strategies discussed previously in [CW, GST, W, WS] are special cases of this paradigm. The paradigm parallelizes the evaluation by partitioning among the processors the instantiations of the rules. After presenting the paradigm, we discuss the following issues, that we see fundamental for parallelization strategies derived from the paradigm properties of the strategies that enable a reduction in the communication overhead, decomposability, load balancing, and application to programs with negation. We prove that decomposability, a concept introduced previously in [WS, CW], is undecidable.

[1]  Nissim Francez,et al.  Distributed Termination , 1980, TOPL.

[2]  H. V. Jagadish,et al.  Multiprocessor Transitive Closure Algorithms , 1988, Proceedings [1988] International Symposium on Databases in Parallel and Distributed Systems.

[3]  Ouri Wolfson,et al.  Sharing The Load Of Logic-program Evaluation , 1988, Proceedings [1988] International Symposium on Databases in Parallel and Distributed Systems.

[4]  Friedemann Mattern,et al.  Global Quiescence Detection Based on Credit Distribution and Recovery , 1989, Inf. Process. Lett..

[5]  Abraham Silberschatz,et al.  A framework for the parallel processing of Datalog queries , 1990, SIGMOD '90.

[6]  Salvatore J. Stolfo,et al.  A simple preprocessing scheme to extract and balance implicit parallelism in the concurrent match of production rules , 1986 .

[7]  David J. DeWitt,et al.  Parallel algorithms for the execution of relational database operations , 1983, TODS.

[8]  Raghu Ramakrishnan,et al.  Performance Evaluation of Data Intensive Logic Programs , 1988, Foundations of Deductive Databases and Logic Programming..

[9]  Guozhu Dong On distributed processibility of datalog queries by decomposing databases , 1989, SIGMOD '89.

[10]  Ralph Morelli,et al.  Book reivew: LOGIC PROGRAMMING: FUNCTIONS, RELATIONS AND EQUATIONS. Edited by Doug DeGroot and Gary Lindstrom (Prentice-Hall) , 1987, SGAR.

[11]  Adrian Walker,et al.  Towards a Theory of Declarative Knowledge , 1988, Foundations of Deductive Databases and Logic Programming..

[12]  Abraham Silberschatz,et al.  Distributed processing of logic programs , 1988, SIGMOD '88.

[13]  Ehud Shapiro,et al.  Concurrent PROLOG: Collected Papers , 1987 .

[14]  Jeffrey D. Ullman,et al.  Principles of database and knowledge-base systems, Vol. I , 1988 .

[15]  Stavros S. Cosmadakis,et al.  Parallel evaluation of recursive rule queries , 1985, PODS '86.

[16]  Paris C. Kanellakis,et al.  Logic Programming and Parallel Complexity , 1986, Foundations of Deductive Databases and Logic Programming..

[17]  Christos H. Papadimitriou,et al.  The parallel complexity of simple chain queries , 1987, PODS '87.

[18]  Oded Shmueli,et al.  Decidability and expressiveness aspects of logic queries , 1987, XP7.52 Workshop on Database Theory.

[19]  Ouri Wolfson,et al.  Why a single parallelization strategy is not enough in knowledge bases , 1989, PODS '89.

[20]  Timos K. Sellis,et al.  Exploiting Concurrency in a DBMS Implementation for Production Systems , 1988, Proceedings [1988] International Symposium on Databases in Parallel and Distributed Systems.

[21]  Alexander J. Pasik,et al.  A methodology for programming production systems and its implications on parallelism , 1989 .