On multi-query optimization
In some key database applications, such as data mining, a sequence of interdependent queries may be posed simultaneously to the DBMS. The optimization of such sequences is called multi-query optimization, and it attempts to exploit these dependencies in the derivation of a query evaluation plan (qep). Although it has been observed and demonstrated by several researchers that exploitation of dependencies speed up the query processing, limited research has been reported how to benefit from multi-query optimization, taking the capabilities of existing query optimizers into account. This is exactly the topic of this paper. Since existing optimizers are able to optimize queries in which a restricted number of basic operations appears, e.g., number of joins is limited to 10, and the optimization of a query is relatively expensive, we attempt to profit from multi query optimization under the condition that queries are passed only once and separately to the optimizer. We propose a two-step optimization procedure. In the first step, we determine, on the basis of the dependencies between queries, in which order they should be specified and what results should be stored. In the second step, each query is passed separately to an optimizer.