Technical data
Chapter 5 Creating Data Cubes
PeopleSoft recommends that you create virtual data cubes when you expect the cubes to be large, sparse,
and output-only, especially when a relatively small slice of the ordinary cubes is used in any given analytic
instance ID. The analytic calculation engine takes a long time to recalculate nonvirtual cubes that are
large, sparse, and output-only. When you make these cubes into virtual cubes, you eliminate them from
the recalculation process and drastically reduce memory requirements. If an analytic instance uses only a
small slice of the cube, t he cube calculates on demand quickly and requires less memory because of the
sparsity compression.
Virtual cubes are a lso useful for intermediate calculations that do not require permanent storage p ermanently,
especially if these cubes would normally be large and sparse .
Note. You cannot use virtual cubes for intermediate calculations that are part of a recursive or circular system.
Note. Do not create virtual cubes out of large, dense cubes that are displayed frequently and take a long
time to recalculate. Such virtual cubes cause delays when an application requests data. To be certain of
recalculation time, PeopleSoft recommends you test whether using a virtual cube causes a significant
delay in the generation of data.
See Chapter 10, “Creating Rules, Formulas, and User Functions,” Understan ding Circular Systems and
Recursive Systems, pag e 135 and Enterprise PeopleTools 8.49 PeopleBook: PeopleCode API Reference,
“Analytic Calculation Engine Classes,” Recalculate.
Intermediate virtual cubes can count as output-only cubes, as long as they do not have nonvirtual dependents.
For example, you can create formulas such as the following for output-only virtual cubes:
• This formula is for the SALARY_BY_EMPLOYEE data cube:
GROUPSUM(RCD JOB, SALARY, BUDGET_PERIOD, BUS_UNIT, EMPID, LEDGER, VERSION)
• This formula is for the BENEFITS_BY_EMPLOYEE data cube:
GROUPSUM(RCD JOB, BENEFITS, BUDGET_PERIOD, BUS_UNIT, EMPID, LEDGER, VERSION)
• This formula is for the SALARY_AND_BENEFITS_BY_EMPLOYEE data cube:
SALARY_BY_EMPLOYEE + BENEFITS_BY_EMPLOYEE
Even though SALARY_BY_EMPLOYEE and BENEFITS_BY_EMPLOYEE are used by another virtual
cube, they a re not recalculated by the analytic calculation engine if there are no nonvirtual dependents. For
this reason, you must write the final formula f or the SALARY_AND_BENEFITS_BY_EMPLOYEE data
cube in this way:
GROUPSUM(RCD_JOB, SALARY, BUDGET_PERIOD, BUS_UNIT, EMPID, LEDGER, VERSION) +⇒
GROUPSUM(RCD JOB, Benefits, Budget Period, Bus Unit, EmpID, Ledger, Version)
See Also
Chapter 5, “Creating Data Cubes,” Creating Virtual Data Cubes, page 40
Chapter 7, “C reatin g Cube Collections,” Types of Cube Collections, p ag e 54
Copyright © 1988-2007, Oracl e. All rights reserved. 37