## Evaluating Recursive Queries in Distributed Databases (1993)

Venue: | IEEE Transactions on Knowledge and Data Engineering |

Citations: | 8 - 1 self |

### BibTeX

@ARTICLE{Nejdl93evaluatingrecursive,

author = {Wolfgang Nejdl and Stefano Ceri and Gio Wiederhold},

title = {Evaluating Recursive Queries in Distributed Databases},

journal = {IEEE Transactions on Knowledge and Data Engineering},

year = {1993},

volume = {5}

}

### OpenURL

### Abstract

In this paper, we study the execution of logic queries in a distributed database environment. We assume that each local database system can execute logic queries, and we design methods for the efficient execution of queries requiring data from multiple sites. Conventional optimization strategies which are well-known in the field of distributed databases, such as the early evaluation of selection conditions and the clustering of processing to manipulate and exchange large sets of tuples, are redefined in view of the additional difficulties due to logic queries, in particular to recursive rules. In order to allow efficient processing of these logic queries we present several program transformation techniques which attempt to minimize distribution costs based on the idea of semi-joins and generalized semi-joins in conventional databases. Although local computation of semi-joins is not possible for the general case, we indicate classes of programs for which these transformation...

### Citations

299 |
Magic Sets and Other Strange Ways to Implement Logic Programs
- Bancilhon, Maier, et al.
- 1986
(Show Context)
Citation Context ...ol messages, and of the required data transmissions between sites. Also in the optimization of logic programs, the early evaluation of selection conditions is fundamental. Methods such as magic sets (=-=[12]-=-, [13]) or counting ([14], [15]) have been designed in order to propagate bindings due to constant arguments in the goals. The above methods, however, do not necessarily produce a set-oriented computa... |

244 | On the power of magic
- Beeri, Ramakrishnan
- 1987
(Show Context)
Citation Context ...sages, and of the required data transmissions between sites. Also in the optimization of logic programs, the early evaluation of selection conditions is fundamental. Methods such as magic sets ([12], =-=[13]-=-) or counting ([14], [15]) have been designed in order to propagate bindings due to constant arguments in the goals. The above methods, however, do not necessarily produce a set-oriented computation, ... |

238 |
Principles of Database and
- Ullman
- 1988
(Show Context)
Citation Context ...ogy is becoming widespread (e.g. [1]). At the same time, an increasing interest is placed on querying relational databases through logic programming languages (e.g. [2], [3], [4], [5], [6], [7], [8], =-=[9]-=-). This paper deals with a problem at confluence of these two disciplines. Though processing logic queries in a distributed database is far from the current state of art, we expect that logic programm... |

99 | Using semi-joins to solve relational queries
- Bernstein, Chiu
- 1981
(Show Context)
Citation Context ...in a distributed environment. Such an optimization step prior to the actual computation of the desired relations is similar in spirit to the semi-join technique used in ordinary relational databases (=-=[22]-=-, [23], [19]) and our work extends and generalizes the concepts of semi-join reducer programs well known in distributed databases for non-recursive relations to the recursive case. We will also give c... |

46 |
Design overview of the Nail! system
- Morris, Ullman, et al.
- 1986
(Show Context)
Citation Context ..., distributed database technology is becoming widespread (e.g. [1]). At the same time, an increasing interest is placed on querying relational databases through logic programming languages (e.g. [2], =-=[3]-=-, [4], [5], [6], [7], [8], [9]). This paper deals with a problem at confluence of these two disciplines. Though processing logic queries in a distributed database is far from the current state of art,... |

34 |
On compiling queries in recursive first-order databases
- Henschen, Naqvi
- 1984
(Show Context)
Citation Context ...roach defining magic semi-joins has been described in [18]. In this paper a new algebraic operation (magic semi-join) was defined and used for the semijoin reduction of stable recursive linear rules (=-=[30]-=-). We generalize this work in the 34 current paper for arbitrary recursive Datalog rules using a logic approach which seems more suitable for general recursions. Earlier work has proposed parallel arc... |

29 |
A database-complete proof procedure based on sldresolution
- Vieille
- 1987
(Show Context)
Citation Context ...l their information has been transferred to the rules with head literals from base relations. This algorithm is very similar to algorithms used in top-down recursive query processing (e.g. [7], [24], =-=[25]-=-, [8]). The difference is mainly, that the solution does not consist of the instantiations provided by the leaves of a full expansion, but of the leaves themselves (similar to partial evaluation techn... |

29 |
A Framework for the Parallel Processing of Datalog Queries
- Ganguly, Silberschatz, et al.
- 1990
(Show Context)
Citation Context ...ment, where the distribution is more or less given by the allocation of the base relations to the different nodes. So our computation is more data-distributed than evaluationdistributed. Recent work (=-=[39]-=-, [40], [41]) has tried to cover a middle ground using a large, but constant number of processors. One of the main goals of this work is to investigate partitioning the rule instantiations in a bottom... |

20 |
Magic counting methods
- Sacca, Zaniolo
- 1987
(Show Context)
Citation Context ...d data transmissions between sites. Also in the optimization of logic programs, the early evaluation of selection conditions is fundamental. Methods such as magic sets ([12], [13]) or counting ([14], =-=[15]-=-) have been designed in order to propagate bindings due to constant arguments in the goals. The above methods, however, do not necessarily produce a set-oriented computation, when we assume that datab... |

19 |
Bounds on the propagation of selection into logic programs
- BEERI, KANELLAKIS, et al.
- 1987
(Show Context)
Citation Context ...ny other papers on this subject. While several of the extensions dealt with more complex than linear recursive queries, two other papers have simplified the magic set idea to produce magic envelopes (=-=[28], [29]). T-=-he idea used in these papers was to minimize the complexity of the magic set rules in order to minimize computation overhead. This "regularization" of the magic set rules has been discussed ... |

18 | Distributed transitive closure computations: The disconnection set approach
- Houtsma, Apers, et al.
- 1990
(Show Context)
Citation Context ...e of goals and rules to be computed; a similar approach is taken in [32]. Instead, in distributed databases execution strategies should be dictated by the actual data distribution. Recent work ([33], =-=[34]-=-) has addressed the parallel computation of special-format queries (such as transitive closures or shortest paths) over fragments of relations using a technique called disconnection set approach. Othe... |

18 |
A New Paradigm for Parallel and Distributed RuleProcessing
- WOLFSON, OZERI
- 1990
(Show Context)
Citation Context ...the distribution is more or less given by the allocation of the base relations to the different nodes. So our computation is more data-distributed than evaluationdistributed. Recent work ([39], [40], =-=[41]-=-) has tried to cover a middle ground using a large, but constant number of processors. One of the main goals of this work is to investigate partitioning the rule instantiations in a bottom-up evaluati... |

16 |
Parallel Evaluation of Recursive Rule Queries
- Cosmadakis, Kanellakis
(Show Context)
Citation Context ...pproach. Other work concerned with the parallel computation of transitive closure queries includes [35] and [36]. Parallel processing using a large number of processors has been described in [37] and =-=[38]-=-. These papers are concerned with the theoretical parallel complexity of recursive programs. Programs included in the NC complexity class run in logarithmic time, but require polynomially many process... |

15 |
A Message Passing Framework for Logical Query Evaluation
- Gelder
- 1986
(Show Context)
Citation Context ...protocol ensures that the distributed computation is halted when a fixed point is reached. We also compare the various reducer-based approaches with a simple dataflow approach (along the direction of =-=[20]-=-) and sequential evaluation. Some trade-off considerations are sketched. Finally, we describe some previous work in section VI. and present our conclusions and planned extensions in section VII.. In t... |

15 |
The parallel complexity of simple chain queries
- Afrati, Papadimitriou
- 1987
(Show Context)
Citation Context ...ion set approach. Other work concerned with the parallel computation of transitive closure queries includes [35] and [36]. Parallel processing using a large number of processors has been described in =-=[37]-=- and [38]. These papers are concerned with the theoretical parallel complexity of recursive programs. Programs included in the NC complexity class run in logarithmic time, but require polynomially man... |

14 |
QSQ towards QoSaQ: Global optimization of recursive queries
- Vieille
- 1988
(Show Context)
Citation Context ...chnology is becoming widespread (e.g. [1]). At the same time, an increasing interest is placed on querying relational databases through logic programming languages (e.g. [2], [3], [4], [5], [6], [7], =-=[8]-=-, [9]). This paper deals with a problem at confluence of these two disciplines. Though processing logic queries in a distributed database is far from the current state of art, we expect that logic pro... |

13 |
Parallel processing of recursive queries in distributed architectures
- Hulin
- 1989
(Show Context)
Citation Context ...ow models of computation have been also proposed [20], but in that approach the flow of the computation was dictated by the structure of goals and rules to be computed; a similar approach is taken in =-=[32]-=-. Instead, in distributed databases execution strategies should be dictated by the actual data distribution. Recent work ([33], [34]) has addressed the parallel computation of special-format queries (... |

12 |
Why a single parallelization strategy is not enough in knowledge bases
- Cohen, Wolfson
- 1989
(Show Context)
Citation Context ...where the distribution is more or less given by the allocation of the base relations to the different nodes. So our computation is more data-distributed than evaluationdistributed. Recent work ([39], =-=[40]-=-, [41]) has tried to cover a middle ground using a large, but constant number of processors. One of the main goals of this work is to investigate partitioning the rule instantiations in a bottom-up ev... |

11 |
Recursive strategies for answering recursive queriesthe rqa/fqi strategy
- Nejdl
- 1987
(Show Context)
Citation Context ...se technology is becoming widespread (e.g. [1]). At the same time, an increasing interest is placed on querying relational databases through logic programming languages (e.g. [2], [3], [4], [5], [6], =-=[7]-=-, [8], [9]). This paper deals with a problem at confluence of these two disciplines. Though processing logic queries in a distributed database is far from the current state of art, we expect that logi... |

11 | On the implementation of a simple class of logic queries for databases - SACCA, ZANIOLO - 1986 |

11 |
Query Processing for Distributed Databases using Generalized Semi-join
- Kambayaashi, Yoshikawa, et al.
- 1983
(Show Context)
Citation Context ...ers. This notion is an extension of precedence reducer programs allowing additional information to be passed along. Generalized reducers extend ideas from non-recursive distributed database research (=-=[19]-=-) to the recursive case. Using counting and other indices we can construct reducer programs that are essential. Section V. shows how to evaluate recursive queries distributedly by a set of parallel pr... |

10 |
One-sided recursion
- NAUGHTON
- 1987
(Show Context)
Citation Context ... : \Gamma par bf ( ; X); par(X; Y ): Q c : answer(anc(a; Y )) : \Gamma par bf ( ; Y ): Theorem 1 We can build an essential precedence reducer for a program LP 0 iff LP 0 is a one-sided recursion (see =-=[26]-=-). 21 While we refer to [26] for an exact definition of one-sided recursions, informally these recursions are defined as follows: If we expand a recursive predicate t defined by a one-sided recursion ... |

8 | An intelligent search method for query optimization by semijoins - Yoo, Lafortune - 1989 |

8 |
A Methodology for Interpreting Tree Queries Into Optimal Semi-Join Expressions
- Chiu, Ho
- 1980
(Show Context)
Citation Context ...istributed environment. Such an optimization step prior to the actual computation of the desired relations is similar in spirit to the semi-join technique used in ordinary relational databases ([22], =-=[23]-=-, [19]) and our work extends and generalizes the concepts of semi-join reducer programs well known in distributed databases for non-recursive relations to the recursive case. We will also give corresp... |

6 |
Parallel computation of transitive closure queries on fragmented databases
- HOUTSMA, APERS, et al.
- 1988
(Show Context)
Citation Context ...ructure of goals and rules to be computed; a similar approach is taken in [32]. Instead, in distributed databases execution strategies should be dictated by the actual data distribution. Recent work (=-=[33]-=-, [34]) has addressed the parallel computation of special-format queries (such as transitive closures or shortest paths) over fragments of relations using a technique called disconnection set approach... |

6 |
de Maindreville, "A Parallel Strategy for Transitive Closure Using Double Hash-Based Clustering
- Cheiney, C
- 1990
(Show Context)
Citation Context ... closures or shortest paths) over fragments of relations using a technique called disconnection set approach. Other work concerned with the parallel computation of transitive closure queries includes =-=[35]-=- and [36]. Parallel processing using a large number of processors has been described in [37] and [38]. These papers are concerned with the theoretical parallel complexity of recursive programs. Progra... |

5 |
Worst-case complexity analysis of methods for logic query implementation
- Marchetti-Spaccamela, Pelaggi, et al.
- 1987
(Show Context)
Citation Context ...ing precedence reducer program in Prolog notation. The answer to the query can be found by taking the appropriate projection over all tuples with the counting argument s(0) (for related work see also =-=[27]-=-, [12]). While generalized reducer programs have the same set-oriented characteristics than precedence reducer based programs, they are essential for a larger class than precedence reducer programs. I... |

4 |
Prolog and relational databases for fifth generation computer systems
- Kunifuji, Yokota
- 1982
(Show Context)
Citation Context ...tributed database technology is becoming widespread (e.g. [1]). At the same time, an increasing interest is placed on querying relational databases through logic programming languages (e.g. [2], [3], =-=[4]-=-, [5], [6], [7], [8], [9]). This paper deals with a problem at confluence of these two disciplines. Though processing logic queries in a distributed database is far from the current state of art, we e... |

4 |
G.: Distributed Databases
- Ceri, Pelagatti
- 1984
(Show Context)
Citation Context ...ssion. One important criterion of this optimization states that it is better clustering a large amount of computations at one site before transferring data between sites, with a set-oriented approach =-=[10]-=-, rather than transferring individual tuples between sites. Another important criterion states that selection conditions should be evaluated as soon as possible in order to reduce the size of intermed... |

4 |
et al, "R*: An Overview of the Architecture
- Williams
- 1982
(Show Context)
Citation Context ...ion is responsible for several important optimizations, aiming at including into LP f only those fragments which 1 An interesting approach is writing predicate names as "system wide names" (=-=see [10], [16]-=-), thus including the notion of their current storage location (or of their birth location). Dictionary information for rules would be organized exactly in the same way as dictionary information for t... |

3 |
NonStop SQL, a distributed, high-performance, high-reliability implementation
- Tandem
- 1987
(Show Context)
Citation Context ...ith the Computer Science Department, Stanford University. I. Introduction A. Introduction With the development of many commercial systems, distributed database technology is becoming widespread (e.g. =-=[1]-=-). At the same time, an increasing interest is placed on querying relational databases through logic programming languages (e.g. [2], [3], [4], [5], [6], [7], [8], [9]). This paper deals with a proble... |

3 |
Description of the overall architecture of the KIWI system
- Sacc`a, Vermeir, et al.
- 1986
(Show Context)
Citation Context ...ted database technology is becoming widespread (e.g. [1]). At the same time, an increasing interest is placed on querying relational databases through logic programming languages (e.g. [2], [3], [4], =-=[5]-=-, [6], [7], [8], [9]). This paper deals with a problem at confluence of these two disciplines. Though processing logic queries in a distributed database is far from the current state of art, we expect... |

3 |
ALGRES: A system for the specification and prototyping of complex databases,” Dip. Elettronica, Politecnico di
- Ceri, Crespi-Reghizzi, et al.
- 1987
(Show Context)
Citation Context ...atabase technology is becoming widespread (e.g. [1]). At the same time, an increasing interest is placed on querying relational databases through logic programming languages (e.g. [2], [3], [4], [5], =-=[6]-=-, [7], [8], [9]). This paper deals with a problem at confluence of these two disciplines. Though processing logic queries in a distributed database is far from the current state of art, we expect that... |

3 |
An optimization strategy for recursive queries in logic databases
- Sippu, Soisalon-Soinen
- 1988
(Show Context)
Citation Context ...er papers on this subject. While several of the extensions dealt with more complex than linear recursive queries, two other papers have simplified the magic set idea to produce magic envelopes ([28], =-=[29]). The ide-=-a used in these papers was to minimize the complexity of the magic set rules in order to minimize computation overhead. This "regularization" of the magic set rules has been discussed first ... |

3 |
Parallel computation of direct transitive closures
- Huang, Cheiney
- 1991
(Show Context)
Citation Context ... or shortest paths) over fragments of relations using a technique called disconnection set approach. Other work concerned with the parallel computation of transitive closure queries includes [35] and =-=[36]-=-. Parallel processing using a large number of processors has been described in [37] and [38]. These papers are concerned with the theoretical parallel complexity of recursive programs. Programs includ... |

1 |
Implementation of logical query languages for databases
- Tsur, Zaniolo
- 1986
(Show Context)
Citation Context ...stems, distributed database technology is becoming widespread (e.g. [1]). At the same time, an increasing interest is placed on querying relational databases through logic programming languages (e.g. =-=[2]-=-, [3], [4], [5], [6], [7], [8], [9]). This paper deals with a problem at confluence of these two disciplines. Though processing logic queries in a distributed database is far from the current state of... |

1 |
Rothnie, "Query processing in SDD-1: A system for distributed databases
- Goodman, Bernstein, et al.
- 1981
(Show Context)
Citation Context ...ent F k , it is required to know relevant tuples of fragments F h , and vice-versa. Globally, these programs build an envelope, which encloses all relevant data to compute the answer to the goal (see =-=[17]-=-). The evaluation of each LP f is set-oriented (where possible) . ffl A logic program LP c and a goal G c such that the pairs (LP f ; Q F ) and (LP c ; Q c ) 4 are equivalent, and LP c uses the reduce... |

1 |
Magic semi-joins
- Ceri, Gottlob, et al.
- 1989
(Show Context)
Citation Context ...al query bindings. Full Reducers uses constraints also from subsequent subgoals in order to maximally reduce the size 5 of intermediate relations; full reducers in relational algebra are described in =-=[18]-=-. Section III. also introduces the notion of essential reducers. If the reduction is essential, then reduced relations are capable of producing the answer to the initial query through simple selection... |

1 |
Query Processing in a Deductive Prolog/RDBMS System
- Nejdl
- 1988
(Show Context)
Citation Context ...use all their information has been transferred to the rules with head literals from base relations. This algorithm is very similar to algorithms used in top-down recursive query processing (e.g. [7], =-=[24]-=-, [25], [8]). The difference is mainly, that the solution does not consist of the instantiations provided by the leaves of a full expansion, but of the leaves themselves (similar to partial evaluation... |

1 |
MPDC: Massive parallel architecure for very large databases
- Tanaka
- 1984
(Show Context)
Citation Context ...rent paper for arbitrary recursive Datalog rules using a logic approach which seems more suitable for general recursions. Earlier work has proposed parallel architectures for evaluating logic queries =-=[31]-=-, but parallelism was used for enhancing the speed of retrieval from a large, single-site database. Data flow models of computation have been also proposed [20], but in that approach the flow of the c... |