Studierende stehen vor dem LC und blicken lächelnd einer Kollegin mit einer Mappe in der Hand nach.

Exercise No. 54: Opera by Richard Wagner (apa)

The following cube stores data about opera-singers and musicians performing in an opera by Richard Wagner.

An opera-singer and a musician perform in an opera. The opera-singer sings in a certain register. The musician plays a certain instrument which belongs to an instrument group. The performance is watched by a spectator and by a critic. The time dimension consists of day and week.

We have six dimensions with the following hierarchical structure:

Table A.E.36.1 - an opera by Richard Wagner

Please build the Aggregation Path Array and assume the following end-user requirements:

1) "a roll up by the time dimension starting at weeks for each critic independent of all other dimensions"

2) "a daily report on the register level independent of all other dimensions"

3) "a complete drill-down by the time dimension down to day for each combination of opera singer and musician, irrespective of all other dimensions"

Select the corresponding cells in the APA and choose the cubes to materialize, then highlight the derivatives of those cubes.

Solution

Figure A.E.36.1 - The resulting APA with the redundancy free-set highlighted

Size of the redundancy-free set (including the base cube): 216

Required cubes, the materialization decision and derivatives

The blue area represents the end-user requirement 1 ("a roll up by the time dimension starting at weeks for each critic independent of all other dimensions"), requirement 2 ("a daily report on the register level independent of all other dimensions") and requirement 3 ("a daily report for each combination of opera singer and musician, irrespective of all other dimensions").

Materializing cube v = (O_*,S_*,C_cr,OS_*,M_*,T_w) (dark blue cell "T_w", representing end-user requirement 1), cube w = (O_*,S_*,C_*,OS_re,M_*,T_d) (dark green cell "M_*", representing end-user requirement 2) and cube x = (O_*,S_*,C_*,OS_os,M_mu,T_d) (red cell "C_*", representing end-user requirement 3) offer us the following sets of derivatives.

Figure A.E.36.2 - Derivatives of cube v = (O_*,S_*,C_cr,OS_*,M_*,T_w)

Figure A.E.36.3 - Derivatives of cube w = (O_*,S_*,C_*,OS_re,M_*,T_d)

Figure A.E.36.4 - Derivatives of cube x = (O_*,S_*,C_*,OS_os,M_mu,T_d)

Figures A.E.36.2 to A.E.36.4 show that end-user requirement 2 is covered by the derivatives of the vector x (end-user requirement 3). To meet all end-user requirements we will only have to materialize two cubes, v and x.