2001 · 62 citations · 19 references
ComputingComputer ScienceComputer SystemsDatabasesOptimizationParallel AlgorithmsData PipelinesData-flow AnalysisParallel SearchingPipeline ParallelismQuery OptimizationQuery ProcessingData PipeliningParallel Query ProcessingPipelining
Database systems frequently have to execute a set of related queries, which share several common subexpressions. Multi-query optimization exploits this, by finding evaluation plans that share common results. Current approaches to multi-query optimization assume that common subexpressions are materialized. Significant performance benefits can be had if common subexpressions are pipelined to their uses, without being materialized. However, plans with pipelining may not always be realizable with limited buffer space, as we show. We present a general model for schedules with pipelining, and present a necessary and sufficient condition for determining validity of a schedule under our model. We show that finding a valid schedule with minimum cost is NP-hard. We present a greedy heuristic for finding good schedules. Finally, we present a performance study that shows the benefit of our algorithms on batches of queries from the TPCD benchmark.
19
V. J. Rayward‐Smith, Thomas H. Cormen, Charles E. Leiserson et al. · Journal of the Operational Research Society · 1991 · 17K citations
Access path selection in a relational database management system
Patricia G. Selinger, M. M. Astrahan, Donald D. Chamberlin et al. · 1979 · 2.2K citations
Timos Sellis · ACM Transactions on Database Systems · 1988 · 809 citations · Full text
Efficient and extensible algorithms for multi query optimization
Prasan Roy, S. Seshadri, S. Sudarshan et al. · ACM SIGMOD Record · 2000 · 409 citations
The Volcano optimizer generator: extensibility and efficient search
Goetz Graefe, William J. McKenna · 2002 · 384 citations