25.01.2015 Views

Cost-Based Optimization of Integration Flows - Datenbanken ...

Cost-Based Optimization of Integration Flows - Datenbanken ...

Cost-Based Optimization of Integration Flows - Datenbanken ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3 Fundamentals <strong>of</strong> Optimizing <strong>Integration</strong> <strong>Flows</strong><br />

for this example plan, the re-optimization time is dominated by the physical plan compilation<br />

and the waiting time for the next possible exchange <strong>of</strong> plans. The generation <strong>of</strong><br />

physical plans regardless <strong>of</strong> whether or not a new plan was found has been reasoned by<br />

optimization techniques (such as switch path re-ordering), which directly reorder operators<br />

and thus, they always signal that recompilation is required. Clearly, for periodical<br />

re-optimization, we could use a larger ∆t and thus, would reduce the cumulative total<br />

optimization time. However, in that case, we would use suboptimal plans for a longer<br />

time and hence, we would miss more optimization opportunities.<br />

Furthermore, Figures 3.20(d) and 3.20(f) show the execution time using periodical reoptimization<br />

compared to the non-optimized execution. The different execution times<br />

are caused by the changing workload characteristics in the sense <strong>of</strong> different input cardinalities<br />

as well as selectivities <strong>of</strong> the different operators. When using periodical reoptimization,<br />

the <strong>of</strong>ten re-occurring small peaks are caused by the numerous asynchronous<br />

re-optimization steps. Further, a major characteristic <strong>of</strong> periodical re-optimization is that<br />

after a certain workload shift, there is an adaptation delay until periodical re-optimization<br />

is triggered. During this time, the execution time <strong>of</strong> the current plan is much longer than<br />

the execution time <strong>of</strong> the optimal plan. In order to reduce these adaptation delays, a small<br />

∆t is required. However, this would significantly increase the total re-optimization time.<br />

To summarize, over time, significant execution time reductions are yielded by periodical<br />

re-optimization due to the adaptation to changing workload characteristics.<br />

(a) Cumulative Execution Time (b) Cumulative Opt. Time (c) Scenario Elapsed Time<br />

Figure 3.21: Influence <strong>of</strong> <strong>Optimization</strong> Interval ∆t<br />

Second, we used the introduced comparison scenario in order to investigate the influence<br />

<strong>of</strong> the parameter ∆t in more detail. We re-executed this with different optimization periods<br />

∆t ∈ {1 s, 2 s, 3.75 s, 7.5 s, 15 s, 30 s, 60 s, 120 s, 240 s, 480 s, 960 s 1800 s, 3600 s, 7200 s}.<br />

Figure 3.21(a) illustrates the resulting cumulative execution time for optimized execution<br />

compared to the unoptimized execution. We observe that the higher the optimization<br />

period, the higher the cumulative execution time because we miss optimization opportunities<br />

after a workload shift due to deferred adaptation. However, it is important to<br />

note that if the optimization period is too small, the execution time gets worse again.<br />

This is reasoned by small benefits reached by immediate asynchronous re-optimization in<br />

combination with increasing optimization costs as shown in Figure 3.21(b). While, so far<br />

we used only the cumulative execution time (sum <strong>of</strong> plan execution times) as indicator,<br />

now, we also discuss the elapsed time (time required for executing the sequence <strong>of</strong> plan instances,<br />

which includes the workflow engine overhead and time during exchange <strong>of</strong> plans).<br />

Figure 3.21(c) shows that for small optimization intervals ∆t—where we <strong>of</strong>ten exchange<br />

plans—the elapsed time increase faster than the cumulative execution time. The reason is<br />

76

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!