Skip to main content

Performance Evaluation of Algorithms for Transitive Closure

This paper presents the results of an experimental evaluation of the performance of three main algorithms for transitive closure: Seminaive, Smart and Blocked Warren. The algorithms have been implemented using a variety of join methods (block nested-loops and hash-join), disk-based and memory-based data structures and buffer replacement strategies. The algorithms were tested on several graphs, ranging from regular trees to random acyclic graphs to random general graphs. Contrary to what several previous studies have found, our experiments indicate that Seminaive is almost always superior to Smart. In most cases, Seminaive exhibited inferior performance to Warren, but surprisingly, there are some types of graphs where Blocked Warren generates more duplicates than Seminaive and is therefore slower. Finally, for the common case where a transitive closure query involves a selection, Seminaive can take advantage of the constants in the selection, whereas Blocked Warren and Smart cannot. Our experiments indicate that the percentage of the graph nodes that need to be selected for Blocked Warren to be superior to Seminaive is rather large (for all graphs tested, it must be greater than 1/3). This implies that for the majority of transitive closure queries with selection, Seminaive is the preferred strategy.

Robert Kabler, Yannis Ioannidis, Michael J. Carey, "Performance Evaluation of Algorithms for Transitive Closure ", Information Systems, Vol. 17, No. 5, Sept. 1992, pp. 415-441, 1992
Published at
Information Systems, Vol. 17, No. 5, Sept. 1992, pp. 415-441
Related research area
No related research area
Related Organizations
No related organizations