IP Library Granted Patent US 8,041,670
Granted Patent B2
US 8,041,670 · App. 12/657,143 · Granted Oct 18, 2011

Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,041,670
App. No.
12/657,143
Filed
Jan 14, 2010
Granted
Oct 18, 2011
Kind
B2
Art Unit
2165
USPC
707/603
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.

Claims (38)

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.

2. The database management system of claim 1 , wherein the query servicing mechanism is implemented in a module within the database management system.

3. The database management system of claim 1 , wherein the system is configured to simultaneously store the dynamically aggregated data in the multi-dimensional data store.

4. The database management system of claim 1 , wherein the system is configured to aggregate the data by calculating aggregated fact data from fact data according to a multi-dimensional data aggregation process, and storing the aggregated fact data in the multi-dimensional data store.

5. The database management system of claim 1 , wherein the aggregation occurs along multiple dimensions.

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.

7. The method of claim 6 , further comprising simultaneously storing the dynamically aggregated data in the multi-dimensional data store.

8. The method of claim 6 , wherein the multi-dimensional data store is generated by calculating aggregated fact data from fact data according to a multi-dimensional data aggregation process, and storing the aggregated fact data in the multi-dimensional data store.

9. The method of claim 6 , wherein the aggregation occurs along multiple dimensions.

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.

11. The tangible computer-readable medium of claim 10 , wherein the aggregation occurs along multiple dimensions.

12. The tangible computer-readable medium of claim 10 , wherein the multi-dimensional data store is generated by calculating aggregated fact data from fact data according to a multi-dimensional data aggregation process, and storing the aggregated fact data in the multi-dimensional data store.

13. The tangible computer-readable medium of claim 10 , wherein the computing device further performs operations comprising simultaneously storing the dynamically aggregated data in the multi-dimensional data store.

Assignments (8)
SECURITY INTEREST Recorded Oct 15, 2020
From: BYLAS DISTRICT ECONOMIC ENTERPRISE, LLC
To: INTELLECTUAL VENTURES ASSETS 119 LLC; INTELLECTUAL VENTURES ASSETS 114 LLC
Reel/Frame 054089/0864 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2019
From: BYLAS DISTRICT ECONOMIC ENTERPRISE LLC
To: MEC MANAGEMENT, LLC
Reel/Frame 050144/0638 →
NUNC PRO TUNC ASSIGNMENT Recorded Dec 18, 2018
From: TAMIRAS PER PTE. LTD., LLC
To: INTELLECTUAL VENTURES ASSETS 114 LLC
Reel/Frame 047809/0516 →
MERGER Recorded Nov 2, 2015
From: YANICKLO TECHNOLOGY, L.L.C.
To: TAMIRAS PER PTE. LTD., LLC
Reel/Frame 036938/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2010
From: HR ASSET HOLDINGS, INC.
To: YANICKLO TECHNOLOGY LIMITED LIABILITY COMPANY
Reel/Frame 024873/0208 →
CHANGE OF NAME Recorded Jan 28, 2010
From: HYPERROLL, INC.
To: HR ASSET HOLDINGS, INC.
Reel/Frame 023861/0460 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2010
From: HYPERROLL ISRAEL, LTD.
To: HYPERROLL, INC.
Reel/Frame 023844/0692 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2010
From: BAKALASH, REUVEN; SHAKED, GUY; CASPI, JOSEPH
To: HYPERROLL, ISRAEL, LTD.
Reel/Frame 023867/0011 →