Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines
First Claim
1. A database management system comprising:
- a multi-dimensional data store configured to store data in a multi-dimensional data structure; and
a computer system comprising computer hardware, the computer system programmed to implement;
a query servicing mechanism configured to service one or more database queries, the query servicing mechanism comprising;
a query processing mechanism configured to process a given database query, the query processing mechanism configured to;
make a determination of whether servicing the given database query needs data that was previously aggregated;
upon a determination that servicing the given database query needs data that was not previously aggregated,
determine a sequence for performing segmented aggregation; and
dynamically aggregate data in the multi-dimensional data store based at least in part on the determined sequence for performing segmented aggregation, so that aggregated data can be accessed and forwarded to the query processing mechanism for use in servicing the given database query; and
upon a determination that servicing the given database query needs data that was previously aggregated,
access and forward the previously aggregated data to the query processing mechanism for use in servicing the given database query.
8 Assignments
0 Petitions
Accused Products
Abstract
Improved method of and apparatus for aggregating data elements in multidimensional databases (MDDB). In the preferred embodiment, the apparatus is realized in the form of a high-performance stand-alone (i.e. external) aggregation server which can be plugged-into conventional MOLAP systems to achieve significant improvements in system performance. In accordance with the principles of the present invention, the stand-alone aggregation server contains a scalable MDDB and a high-performance aggregation engine that are integrated into the modular architecture of the aggregation server. The stand-alone aggregation server of the present invention can uniformly distribute data elements among a plurality of processors, for balanced loading and processing, and therefore is highly scalable. The stand-alone aggregation server of the present invention can be used to realize (i) an improved MDDB for supporting on-line analytical processing (OLAP) operations, (ii) an improved Internet URL Directory for supporting on-line information searching operations by Web-enabled client machines, as well as (iii) diverse types of MDDB-based systems for supporting real-time control of processes in response to complex states of information reflected in the MDDB.
-
Citations
13 Claims
-
1. A database management system comprising:
-
a multi-dimensional data store configured to store data in a multi-dimensional data structure; and a computer system comprising computer hardware, the computer system programmed to implement; a query servicing mechanism configured to service one or more database queries, the query servicing mechanism comprising; a query processing mechanism configured to process a given database query, the query processing mechanism configured to; make a determination of whether servicing the given database query needs data that was previously aggregated; upon a determination that servicing the given database query needs data that was not previously aggregated,
determine a sequence for performing segmented aggregation; and
dynamically aggregate data in the multi-dimensional data store based at least in part on the determined sequence for performing segmented aggregation, so that aggregated data can be accessed and forwarded to the query processing mechanism for use in servicing the given database query; andupon a determination that servicing the given database query needs data that was previously aggregated,
access and forward the previously aggregated data to the query processing mechanism for use in servicing the given database query. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer-implemented method comprising:
by a computer system comprising computer hardware; receiving one or more database queries from a user; determining whether servicing the given database query needs data that was previously aggregated; at least partly in response to determining that servicing the given database query needs data that was not previously aggregated, determining a sequence for performing segmented aggregation and dynamically aggregating data in a multi-dimensional data store based at least in part on the determined sequence for performing segmented aggregation, so that aggregated data can be accessed and forwarded to the user; and at least partly in response to determining that servicing the given database query needs data that was previously aggregated, accessing and forwarding the previously aggregated data to the user. - View Dependent Claims (7, 8, 9)
-
10. A tangible computer-readable medium encoded with instructions thereon, wherein the instructions are readable by a computing device in order to cause the computing device to perform operations comprising:
-
receiving one or more database queries from a user; determining whether servicing the given database query needs data that was previously aggregated; at least partly in response to determining that servicing the given database query needs data that was not previously aggregated, determining a sequence for performing segmented aggregation and dynamically aggregating data in a multi-dimensional data store based at least in part on the determined sequence for performing segmented aggregation, so that aggregated data can be accessed and forwarded to the user; and at least partly in response to determining that servicing the given database query needs data that was previously aggregated, accessing and forwarding the previously aggregated data to the user. - View Dependent Claims (11, 12, 13)
-
Specification