The authors describe an approach to the compile-time optimization and parallelization of queries for execution in DBS3, a shared-memory parallel database system. The approach makes possible exploring a search space large enough to include zigzag trees which are intermediate between left-deep and right-deep trees. Zigzag trees are shown to provide better response time than right-deep trees in the case of limited memory. Because DBS3 implements a parallel dataflow execution model, this approach applies to both shared-memory and distributed-memory architectures. Performance measurements run using the DBS3 prototype show the advantages of zigzag trees under various conditions.< >
Luc BouganimBenoît DagevillePatrick Valduriez
Mohamed ZaïtDaniela FlorescuPatrick Valduriez
P.S. YuMan ChenJoel L. WolfJavier S. Turek