Method and system for performing range-sum queries on a data cube
First Claim
1. A method for performing a range-sum query in a database in which data include a plurality of attributes and are represented as a d-dimensional data cube having a plurality of cells, the dimensions of the data cube corresponding respectively to the attributes, each cell having an aggregate value of the corresponding data attribute values, and the range-sum query including a range of values for each data attribute, the method comprising the steps of:
- selecting a subset of the dimensions of the data cube;
computing a plurality of prefix-sums along the selected dimensions, based on the aggregate values corresponding to the ranges of values of the data attributes; and
generating a range-sum result based on the data represented by the computed prefix-sums.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for performing a range-sum query in a database, in which the data is represented as a multi-dimensional data cube, is disclosed. The method comprises the steps of: selecting a subset of the dimensions of the data cube; computing a set of prefix-sums along the selected dimensions, based on the aggregate values in the cube corresponding the queried ranges; and generating a range-sum result based on the computed prefix-sums. Two d-dimensional arrays A and P are used for representing the data cube and the prefix-sums of the data cube, respectively. By maintaining the prefix-sum array P of the same size as the data cube, all range queries for a given cube can be answered in constant time, irrespective of the size of the sub-cube circumscribed by a query, using the inverse binary operator of the SUM operator. Alternatively, only auxiliary information for any user-specified fraction of the size of the d-dimensional data cube is maintained, to minimize the required system storage. The answer to a range query may now require access to some cells of the data cube in addition to the auxiliary information, but the average time complexity is still reduced significantly.
-
Citations
36 Claims
-
1. A method for performing a range-sum query in a database in which data include a plurality of attributes and are represented as a d-dimensional data cube having a plurality of cells, the dimensions of the data cube corresponding respectively to the attributes, each cell having an aggregate value of the corresponding data attribute values, and the range-sum query including a range of values for each data attribute, the method comprising the steps of:
-
selecting a subset of the dimensions of the data cube; computing a plurality of prefix-sums along the selected dimensions, based on the aggregate values corresponding to the ranges of values of the data attributes; and generating a range-sum result based on the data represented by the computed prefix-sums. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer program product for use with a computer system for performing a range-sum query in a database in which data include a plurality of attributes and are represented as a d-dimensional data cube having a plurality of cells, the dimensions of the data cube corresponding respectively to the attributes, each cell having an aggregate value of the corresponding data attribute values, and the range-sum query including a range of values for each data attribute, the computer program product comprising:
-
a computer-readable medium; means, provided on the computer-readable medium, for directing the system to select a subset of the dimensions of the data cube; means, provided on the computer-readable medium, for directing the system to compute a plurality of prefix-sums along the selected dimensions, based on the aggregate values corresponding to the ranges of values of the data attributes; and means, provided on the computer-readable medium, for directing the system to generate a range-sum result based on the data represented by the computed prefix-sums. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A database system for performing a range-sum query in a database in which data include a plurality of attributes and are represented as a d-dimensional data cube having a plurality of cells, the dimensions of the data cube corresponding respectively to the attributes, each cell having an aggregate value of the corresponding data attribute values, and the range-sum query including a range of values for each data attribute, the system comprising:
-
means for selecting a subset of the dimensions of the data cube; means for computing a plurality of prefix-sums along the selected dimensions, based on the aggregate values corresponding to the ranges of values of the data attributes; and means for generating a range-sum result based on the data represented by the computed prefix-sums. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
-
Specification