A virtual cube is a combination of multiple cubes in one logical cube, somewhat like a relational database view that combines other views and tables. When you create a virtual cube, you select measures and dimensions from the consolidated set of dimensions and measures in the underlying component cubes. End users see the virtual cube as a single cube.
A virtual cube can also be based on a single cube to expose only selected subsets of its measures and dimensions.
Because virtual cubes store only their definitions and not the data of their component cubes, they require virtually no physical storage space. You can use virtual cubes to create combinations and variants of existing cubes without using significant additional storage.
A virtual cube can provide a valuable security function by limiting some users’ view of the underlying cubes. If some of a cube’s information is sensitive and not suitable for all users, create a virtual cube from the cube and omit the sensitive information. Then create two security roles: the first containing the users permitted to see the sensitive information, and the second containing the other users. Finally, grant the first role access to the cube and the second role access to the virtual cube.
After you create a virtual cube, you must process it before client applications can browse it. Processing a virtual cube establishes the internal links to the specified dimensions and measures in its underlying cube or cubes. This linking operation is performed quickly. However, processing a virtual cube automatically triggers processing of all underlying cubes that need to be processed, which can add significant time.
For more information, see Building a Virtual Cube.