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...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
6 On-Demand Re-<strong>Optimization</strong><br />
ical re-optimization increases due to the increasing total execution time because more<br />
re-optimization steps have taken place (Figure 6.16(h)).<br />
Third, we varied the optimization interval ∆t ∈ {1 s, 3 s, 6 s, 12 s, 24 s, 48 s, 92 s, 184 s}.<br />
Obviously, the execution time <strong>of</strong> unoptimized execution, and on-demand re-optimization<br />
are independent <strong>of</strong> this optimization interval (Figure 6.16(c)). The same is also true for<br />
the optimization time and the number <strong>of</strong> optimization steps <strong>of</strong> on-demand re-optimization<br />
(Figures 6.16(f) and 6.16(i)). In contrast, the optimization interval is a high-influence parameter<br />
for periodical re-optimization. For an increasing optimization interval, we observe<br />
a degradation <strong>of</strong> the execution time because we miss more optimization opportunities due<br />
to longer adaptation delays. Interestingly, for specific configurations, the execution time is<br />
even significantly worse than the unoptimized execution because we switch to the optimal<br />
plan just before the next workload shift occurs. However, if we further increase the optimization<br />
interval, the execution time converges to the unoptimized case. The benefit <strong>of</strong><br />
on-demand re-optimization mainly depends the benefit <strong>of</strong> applied optimization techniques.<br />
For really short optimization intervals <strong>of</strong> several seconds, we observe the best configuration<br />
<strong>of</strong> periodical re-optimization, which is still slower than on-demand re-optimization. For<br />
these configurations, we observe a significant increase <strong>of</strong> the cumulative re-optimization<br />
time because the number <strong>of</strong> re-optimization steps increased up to 544.<br />
Finally, we can summarize that on-demand re-optimization always lead to the lowest<br />
execution time, where we observed execution time reductions compared to periodical<br />
re-optimization <strong>of</strong> up-to 44.7%. However, the maximum benefit depends on applied optimization<br />
techniques, where in this setting we only used selection re-ordering. Furthermore,<br />
on-demand re-optimization shows much better robustness <strong>of</strong> execution time when varying<br />
the tested influencing aspects.<br />
Directed Re-<strong>Optimization</strong> Benefit<br />
In addition, we evaluated the benefit <strong>of</strong> directed re-optimization, where we re-used the<br />
different plans from Chapter 3 that included a varying number <strong>of</strong> join operators with<br />
m = {2, 4, 6, 8, 10, 12, 14} as a clique query (all directly connected). We compared the<br />
optimization time <strong>of</strong> (1) the full join enumeration using the standard DPSize algorithm<br />
[Moe09], (2) our join enumeration heuristic with quadratic time complexity that we use<br />
if the number <strong>of</strong> joins exceed eight joins (see Section 3.3.2), and (3) our directed reoptimization<br />
that only takes operators into account that are included in violated optimality<br />
conditions. Before optimization, we randomly generated statistics for input cardinalities<br />
and join selectivities. For directed re-optimization, we used an optimized plan and<br />
randomly changed the statistics <strong>of</strong> one join. The experiment was repeated 100 times.<br />
Figure 6.17: Directed Join Enumeration Benefit<br />
194