Multidimensional database storage and retrieval system
First Claim
1. A method of storing data values in a multidimensional database comprising:
- identifying a plurality of dimensions, wherein each of the dimensions is indicative of a plurality of storage locations;
identifying a hierarchy of attributes within at least one of the dimensions, wherein the hierarchy is indicative of an association between the attributes;
attributing a plurality of data values to each of the attributes;
storing the data values on a storage medium based on the data values indicated by the hierarchy and stored on the storage medium in proximity to associated data values, wherein the associated data values are attributed to associated attributes as indicated by the hierarchy, the data values further comprising aggregate values and detail values;
aggregating at least one of the dimensions having a hierarchy by traversing each of the aggregate values included in the dimension; and
including, in an aggregation total, the associated data values corresponding to the aggregate value.
2 Assignments
0 Petitions
Accused Products
Abstract
In a multidimensional database, an aggregation operation is performed in an optimal manner by storing the values included in the/aggregation operation on the same disk page. A sparsity manager determines aggregate values that are computed from other data values during the aggregation operation. Each aggregate value is associated with one or more data values that are used during the aggregation operation to compute the aggregate value. The sparsity manager stores the associated data values in proximity to each other, such as on the same disk page, so that multiple disk page fetches may not be required for the same set of data values during the aggregation operation. The data values used in the aggregation operation can therefore be fetched once from a disk page, and thereafter are found in memory, such as on a cache page corresponding to the disk page. In this manner, multiple fetches for the same disk page during the aggregation operation are avoided.
42 Citations
16 Claims
-
1. A method of storing data values in a multidimensional database comprising:
-
identifying a plurality of dimensions, wherein each of the dimensions is indicative of a plurality of storage locations; identifying a hierarchy of attributes within at least one of the dimensions, wherein the hierarchy is indicative of an association between the attributes; attributing a plurality of data values to each of the attributes; storing the data values on a storage medium based on the data values indicated by the hierarchy and stored on the storage medium in proximity to associated data values, wherein the associated data values are attributed to associated attributes as indicated by the hierarchy, the data values further comprising aggregate values and detail values; aggregating at least one of the dimensions having a hierarchy by traversing each of the aggregate values included in the dimension; and including, in an aggregation total, the associated data values corresponding to the aggregate value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of storing data values in a multidimensional database comprising:
-
identifying a plurality of dimensions, wherein each of the dimensions is indicative of a plurality of attributes associated with a data value; identifying a hierarchy within at least one of the dimensions, wherein the hierarchy is indicative of an association between the plurality of attributes; assigning a plurality of data values to each of the plurality of attributes; storing the data values on a storage medium in proximity to associated data values, wherein the associated data values are assigned to associated attributes as indicated by the hierarchy, the data values further including aggregate values and detail values; aggregating at least one of the dimensions having a hierarchy by traversing each of the aggregate values included in the dimension; and including, in an aggregation total, the associated data values corresponding to the aggregate value. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification