On parallel execution of multiple pipelined hash joins
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
Parallelism and its price: a case study of nonstop SQL/MP
ACM SIGMOD Record
Parallel evaluation of multi-join queries
SIGMOD '95 Proceedings of the 1995 ACM SIGMOD international conference on Management of data
Performance tradeoffs for client-server query processing
SIGMOD '96 Proceedings of the 1996 ACM SIGMOD international conference on Management of data
Efficient and accurate cost models for parallel query optimization (extended abstract)
PODS '96 Proceedings of the fifteenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Towards a theory of cost management for digital libraries and electronic commerce
ACM Transactions on Database Systems (TODS)
Memory allocation strategies for complex decision support queries
Proceedings of the seventh international conference on Information and knowledge management
Query Optimization in Multidatabase Systems
Distributed and Parallel Databases
Load Balancing for Parallel Query Execution on NUMA Multiprocessors
Distributed and Parallel Databases
Parallel Query Scheduling and Optimization with Time- and Space-Shared Resources
VLDB '97 Proceedings of the 23rd International Conference on Very Large Data Bases
VLDB '94 Proceedings of the 20th International Conference on Very Large Data Bases
Coloring Away Communication in Parallel Query Optimization
VLDB '95 Proceedings of the 21th International Conference on Very Large Data Bases
The Design, Implementation and Evaluation of an ODMG Compliant, Parallel Object Database Server
Distributed and Parallel Databases
Revisiting pipelined parallelism in multi-join query processing
VLDB '05 Proceedings of the 31st international conference on Very large data bases
ModParOpt: a modular query optimizer for multi-query parallel databases
ADBIS'97 Proceedings of the First East-European conference on Advances in Databases and Information systems
Hi-index | 0.00 |
Query optimization for parallel machines needs to consider machine architecture, processor and memory resources available, and different types of parallelsim, making the search space much larger than the sequential case. In this paper our aim is to determine a plan that makes the execution of an individual query very fast; making minimizing parallel execution time the right objective. This creates the following circular dependence: a plan tree is needed for effective resource assignment, which is needed to estimate the parallel execution time, and this is needed for the cost-based search for a good plan tree. In this paper we propose a new search heuristic that breaks the cycle by constructing the plan tree layer by layer in a bottom-up manner. To select nodes at the next level, the lower and upper bounds on the execution time for plans consistent with the decisions made so far are estimated and are used to guide the search. A query plan representation for intra- and inter-operator parallelism, pipelining, and processor and memory assignment is proposed. Also proposed is a new approach to estimating the parallel execution time of a plan that considers sum and max of operators working sequentially and in parallel, respectively. The results obtains from a prototype optimizer are presented.