An example of stepwise refinement of distributed programs: quiescence detection
ACM Transactions on Programming Languages and Systems (TOPLAS) - The MIT Press scientific computation series
An amateur's introduction to recursive query processing strategies
SIGMOD '86 Proceedings of the 1986 ACM SIGMOD international conference on Management of data
The parallel complexity of simple chain queries
PODS '87 Proceedings of the sixth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
SIAM Journal on Computing
Foundations of logic programming; (2nd extended ed.)
Foundations of logic programming; (2nd extended ed.)
Principles of database and knowledge-base systems, Vol. I
Principles of database and knowledge-base systems, Vol. I
Distributed processing of logic programs
SIGMOD '88 Proceedings of the 1988 ACM SIGMOD international conference on Management of data
Parallel evaluation of the transitive closure of a database relation
International Journal of Parallel Programming
Sharing the load of logic-program evaluation
DPDS '88 Proceedings of the first international symposium on Databases in parallel and distributed systems
On distributed processibility of datalog queries by decomposing databases
SIGMOD '89 Proceedings of the 1989 ACM SIGMOD international conference on Management of data
Why a single parallelization strategy is not enough in knowledge bases
PODS '89 Proceedings of the eighth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
The Semantics of Predicate Logic as a Programming Language
Journal of the ACM (JACM)
Introduction to Logic Programming
Introduction to Logic Programming
PODS '91 Proceedings of the tenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Parallelizing Datalog programs by generalized pivoting
PODS '91 Proceedings of the tenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Incremental evaluation of rules and its relationship to parallelism
SIGMOD '91 Proceedings of the 1991 ACM SIGMOD international conference on Management of data
Managing Communication Networks by Monitoring Databases
IEEE Transactions on Software Engineering
A Parallel Scheme Using the Divide-and-Conquer Method
Distributed and Parallel Databases
Parallel execution of prolog programs: a survey
ACM Transactions on Programming Languages and Systems (TOPLAS)
Data Partition and Parallel Evaluation of Datalog Programs
IEEE Transactions on Knowledge and Data Engineering
Mapping Datalog Program Execution to Networks of Processors
IEEE Transactions on Knowledge and Data Engineering
Description and Identification of Distributed Fragments of Recursive Relations
IEEE Transactions on Knowledge and Data Engineering
Evaluating Recursive Queries in Distributed Databases
IEEE Transactions on Knowledge and Data Engineering
Parallel and Distributed Processing of Rules by Data-Reduction
IEEE Transactions on Knowledge and Data Engineering
Implementation and Performance Evaluation of a Parallel Transitive Closure Algorithm on PRISMA/DB
VLDB '93 Proceedings of the 19th International Conference on Very Large Data Bases
Journal of Parallel and Distributed Computing
A parallel ASP instantiator based on DLV
Proceedings of the 5th ACM SIGPLAN workshop on Declarative aspects of multicore programming
Mind the data skew: distributed inferencing by speeddating in elastic regions
Proceedings of the 19th international conference on World wide web
Map-reduce extensions and recursive queries
Proceedings of the 14th International Conference on Extending Database Technology
Distributed island-based query answering for expressive ontologies
GPC'10 Proceedings of the 5th international conference on Advances in Grid and Pervasive Computing
Large-scale computation not at the cost of expressiveness
HotOS'13 Proceedings of the 14th USENIX conference on Hot Topics in Operating Systems
Distributed socialite: a datalog-based language for large-scale graph analysis
Proceedings of the VLDB Endowment
Hi-index | 0.00 |
This paper presents several complementary methods for the parallel, bottom-up evaluation of Datalog queries. We introduce the notion of a discriminating predicate, based on hash functions, that partitions the computation between the processors in order to achieve parallelism. A parallelization scheme with the property of non-redundant computation (no duplication of computation by processors) is then studied in detail. The mapping of Datalog programs onto a network of processors, such that the results is a non-redundant computation, is also studied. The methods reported in this paper clearly demonstrate the trade-offs between redundancy and interprocessor-communication for this class of problems.