Patent ID: 7593955

Claim:
A computer-implemented system comprising: a data store storing multidimensional data arranged as a data cube having multiple dimensions, wherein one or more of the dimensions includes a plurality of hierarchically arranged members: a relational database organized in accordance with a relational database schema; a computer-readable medium storing an executable software module; and a processor causing the executable software module to generate, from the data cube, the schema for the relational database to store the multidimensional data from the data cube, wherein the software module accesses the data store, examines the dimensions of the data cube and generates the schema for the relational database to include hierarchy data for each of the dimensions, wherein, for each of the dimensions, the software module generates hierarchy data of the schema to include a set of nodes that describes parent-child relationships between the members of the dimension, wherein, when generating the schema for the relational database from the data cube, the software module reorganizes the relationships between the nodes in the hierarchy data of the schema for at least one of the dimensions so that the hierarchy data of the schema for the relational database is guaranteed to aggregate, using only summations, to totals represented within the data cube, wherein, for the at least one dimension, the reIationship between the members of the dimension are described by mathematical expressions, wherein, for the at least one dimension, the software module identifies any nodes within the hierarchy data that are associated with expressions other than simple sums, and wherein the software module reorganizes the nodes of the hierarchy data by moving all sub-hierarchies of the identified nodes to root nodes so that the hierarchy data for that dimension includes a set of sum nodes that represents members of the dimension associated with calculations that are only summations of other nodes and further includes a set of root nodes that represents members of the dimension associated with calculations other than only summations.