System and method for automatic dependency analysis for use with a multidimensional database
AssigneeOracle International Corporation
InventorsVinod Padinjat Menon, Kumar Ramaiyer
Life of this patent
Estimating the term…
Abstract
In accordance with an embodiment, described herein is a system and method for dependency analysis for a calculation script in a multidimensional database computing environment. A multidimensional database cube aggregation can be represented as a lattice of blocks or cube, arranged according to a database outline (e.g., intra-dimensional or member hierarchy). When the multidimensional database system performs computations in parallel for a given calculation script, portions of the cube that can be computed concurrently are identified.
Claims20
A system for providing parallel calculation within a multidimensional database environment, comprising:
- a multidimensional database for storing data associated with a plurality of dimensions;
- and
- a computing device having a processor executing instructions that cause the processor to:
- determine a set of task dimensions for an operation on the multidimensional database, wherein a task dimension comprises a sparse dimension of the multidimensional database;
- generate a plurality of tasks for the operation based on respective members of respective task dimensions of the set of task dimensions;
- identify a non-participating dimension in the set of task dimensions based on the plurality of tasks;
- determine a plurality of task levels based on the plurality of tasks, the plurality of task levels including a first task level that includes a first set of tasks determined to have no dependencies on other tasks and tasks associated with members of the non- participating dimension;
- and
- execute, in parallel, tasks included in the first task level.
A method for parallel calculation in a multidimensional database, comprising:
- determining a set of task dimensions for an operation on the multidimensional database, wherein a task dimension comprises a sparse dimension of the multidimensional database;
- generating a plurality of tasks for the operation based on respective members of respective task dimensions of the set of task dimensions;
- identifying a non-participating dimension in the set of task dimensions based on the plurality of tasks;
- determining a plurality of task levels based on the plurality of tasks, the plurality of task levels including a first task level that includes a first set of tasks determined to have no dependencies on other tasks and tasks associated with members of the non-participating dimension;
- and
- executing, in parallel, tasks included in the first task level.
A non-transitory computer-readable storage medium having instructions stored thereon, which when read and executed by a computer, cause the computer to:
- determine a set of task dimensions for an operation on a multidimensional database, wherein a task dimension comprises a sparse dimension of the multidimensional database;
- generate a plurality of tasks for the operation based on respective members of respective task dimensions of the set of task dimensions;
- identify a non-participating dimension in the set of task dimensions based on the plurality of tasks;
- determine a plurality of task levels based on the plurality of tasks, the plurality of task levels including a first task level that includes a first set of tasks determined to have no dependencies on other tasks and tasks associated with members of the non-participating dimension;
- and
- execute, in parallel, tasks included in the first task level.
Dependencies are inferred from the claim text.