Cost-Based Optimization of Integration Flows - Datenbanken ...
Cost-Based Optimization of Integration Flows - Datenbanken ...
Cost-Based Optimization of Integration Flows - Datenbanken ...
- No tags were found...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
6 On-Demand Re-<strong>Optimization</strong><br />
projection, early translation, early group-by, join enumeration), (2) techniques that insert<br />
or remove specific operators (e.g., execution pushdown, order-by insertion, rewriting<br />
sequences/iteration to parallel flows), and (3) techniques that choose between different<br />
physical operator implementations (e.g., join type selection, setoperation type selection).<br />
Fourth, existing cost models (e.g., cost formulas and aspects such as correlation) can<br />
be reused. Only the optimizer interface and the single optimization techniques require<br />
some changes with regard to (1) expressing optimality with partial PlanOptTrees and (2)<br />
allowing for directed re-optimization <strong>of</strong> subplans. We explained these modifications for<br />
selected optimization techniques. In conclusion, the concept <strong>of</strong> on-demand re-optimization<br />
is generally applicable for existing optimizer architectures as well.<br />
6.5 Experimental Evaluation<br />
In this section, we present selected experimental evaluation results comparing the ondemand<br />
re-optimization with the periodical re-optimization that has been evaluated already<br />
in Chapter 3. Therefore, we concentrate on the comparison <strong>of</strong> the different optimization<br />
models rather than comparing the on-demand re-optimization approach with the<br />
unoptimized execution, or regarding the benefit <strong>of</strong> individual optimization techniques. In<br />
general, the experiments show that:<br />
• Most importantly, the cumulative costs <strong>of</strong> plan execution are reduced due to the fast<br />
adaptation to changing workload characteristics that prevents missed optimization<br />
opportunities. In addition to the fast adaptation, the total execution time does not<br />
depend on the chosen optimization interval anymore.<br />
• The re-optimization costs are typically reduced because re-optimization is only triggered<br />
if required. Re-optimization might be triggered more frequently than for periodical<br />
re-optimization in case <strong>of</strong> continuously changing workload characteristics.<br />
For this reason <strong>of</strong> ensuring robustness, the use <strong>of</strong> our lightweight correlation table<br />
has higher importance as for the periodical re-optimization.<br />
• For complex integration flows, directed re-optimization significantly improves the optimization<br />
time. This is especially true for optimization techniques with super-linear<br />
time complexity, where the benefit <strong>of</strong> reducing the number <strong>of</strong> evaluated combinations<br />
has huge impact on the overall optimization time.<br />
• The overhead <strong>of</strong> evaluating optimality conditions for each monitored atomic statistic<br />
is fairly low due to minimal statistic maintenance. Furthermore, this low overhead<br />
is negligible compared to the cumulative execution time improvements.<br />
In detail, the description <strong>of</strong> our experimental results is structured as follows. First, we<br />
present the end-to-end comparison <strong>of</strong> on-demand re-optimization with periodical and no<br />
optimization using simple and complex integration flows. We also show the scalability with<br />
varying parameters. Second, we discuss the benefit <strong>of</strong> directed re-optimization and the<br />
overhead <strong>of</strong> maintaining optimality conditions. Third, we explain the effects <strong>of</strong> correlation<br />
and how we achieve robustness <strong>of</strong> on-demand re-optimization.<br />
Experimental Setting<br />
We implemented the on-demand re-optimization, within our WFPE (workflow process engine).<br />
This includes the PlanOptTree data structure and related algorithms, as well as<br />
188