In practice, uniform workloads are a very rare exception. Therefore they cannot be used to draw realistic conclusions. However, they can help to simplify the evaluation of the components of the performance model that are not susceptible to data skew and other forms of non-uniformity. To prepare such a preliminary evaluation is the focus of this section. Under the notion of uniformity of the workload we assume the following:
First, we want to approximate the size of a fragment Rk with . For that purpose we can use
which gives the average number of
fragments to which a tuple is assigned. Assuming a partition
of into m equally sized segments, i.e. any two
subsequent breakpoints, pk and pk+1, are at equal distance.
The latter can be calculated by . If is the average length of a timestamp interval then
the interval occupies a portion of
(61) |
The quotient in (8.30) can also result in values beyond 1 which means that which means that the (average) length of a segment is smaller than the average length of an interval. Consequently, most (in the general case) or all (under the assumption of uniformity) intervals overlap the right breakpoint. This is a bad choice for a partition.
Now we can approximate the size of a fragment Rk for :
As each tuple can only be assigned to one R'k, the sizes of these are given by From |Rk| = |R'k| + |R''k| we can conclude that In the same way, the values for the |Qk|, |Q'k| and |Q''k| can be derived. Table 8.8 summarises the approximations made under the assumption of uniformity.