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...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

5 Multi-Flow <strong>Optimization</strong><br />

Execution Time<br />

W + (P)·|M’|<br />

Total Execution Time W(M’,k’)<br />

W + (P)<br />

lower bound<br />

Relative Execution Time W(P’,k’) / k’<br />

Waiting Time<br />

∆tw<br />

Figure 5.13: Monotonically Non-Increasing Execution Time with Lower Bound<br />

total execution time is decreased as long as we benefit from it with regard to the total<br />

latency time. The execution time W (P ′ , k ′ ) is computed by<br />

W (P ′ , k ′ ) = W − (P ′ ) + W + (P ′ ) · k ′ , (5.11)<br />

where W + (P ′ ) denote the costs (execution time) <strong>of</strong> operators that do not benefit from<br />

partitioning, while W − (P ′ ) denotes the costs <strong>of</strong> operators that benefit from partitioning<br />

(independent <strong>of</strong> k ′ ). As a result, in the worst case, the execution time W (P ′ , k ′ ) increases<br />

linearly with increasing k ′ . Thus, the relative execution time W (P ′ , k ′ )/k ′ is a monotonically<br />

non-increasing function with<br />

∀k ′ , k ′′ ∈ [1, |M ′ |] : k ′ < k ′′ ⇒ W (P ′ , k ′ )<br />

k ′ ≥ W (P ′ , k ′′ )<br />

k ′′ . (5.12)<br />

If we now fix a certain |M ′ |, this also implies that the total execution time W (M ′ , k ′ ) is a<br />

monotonically non-increasing function with<br />

Then, it follows directly that<br />

W (M ′ , k ′ ) = W (P ′ , k ′ )<br />

k ′ · |M ′ |. (5.13)<br />

W (P ′ , k ′ )<br />

k ′ ≤ W (P ′ , k ′ − 1)<br />

k ′ ≤ W (P )<br />

− 1<br />

W (P ′ , k ′ )<br />

k ′ · |M ′ | ≤ W (P ′ , k ′ − 1)<br />

k ′ · |M ′ | ≤ W (P ) · |M ′ |.<br />

− 1<br />

(5.14)<br />

Hence, Theorem 5.1 holds.<br />

This result <strong>of</strong> monotonic non-increasing relative and total execution time functions is<br />

illustrated in Figure 5.13 as (strictly) monotonically decreasing function. However, due<br />

to (1) integer batch sizes k ′ and (2) a constant function in the case, where no operator<br />

benefits from partitioning, the functions are, in general, monotonic non-increasing.<br />

Lower Bound <strong>of</strong> Relative and Total Execution Time<br />

In analogy to Amdahl’s law, where the fraction <strong>of</strong> a task (execution time) that cannot be<br />

executed in parallel determines the upper bound for the reachable speedup, we compute<br />

the lower bound <strong>of</strong> the relative and total execution times. The existence <strong>of</strong> this lower bound<br />

was already discussed in Section 5.3. Now, we investigate this lower bound analytically.<br />

152

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

Saved successfully!

Ooh no, something went wrong!