IP Library Granted Patent US 8,195,602
Granted Patent B2
US 8,195,602 · App. 12/455,664 · Granted Jun 5, 2012

Relational database management system (RDBMS) employing a relational datastore and a multi-dimensional database (MDDB) for serving query statements from 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,195,602
App. No.
12/455,664
Granted
Jun 5, 2012
Kind
B2
Abstract

A relational database management system (RDBMS) for servicing query statements from one or more client machines, using a relational data store and a multi-dimensional database (MDDB). The RDBMS includes a query interface which is adapted to receive query statements from the client machines, and to generate one or more query requests. The RDBMS includes a query handling mechanism which receives each request from the query interface, extracts a set of dimensions associated with the request, uses the dimensions to retrieve aggregated fact data from the MDDB, and forwards retrieved aggregated fact data to the query processing mechanism for subsequent processing. When the query processing mechanism of the RDBMS determines that servicing one or more query requests requires data stored in the relational tables, then the query handling mechanism automatically routes the requests to the relational data tables, so that data can be accessed from the relational tables and forwarded to the query processing mechanism for use in servicing the requests, in a manner transparent to the client machine. When the query processing mechanism determines that servicing one or more query requests requires aggregated data from the MDDB, then the query handling mechanism automatically routes the requests to the MDDB, so that data can be accessed from the MDDB and forwarded to the query processing mechanism for use in servicing the requests, in a manner transparent to the client machine.

Claims (51)

1. A relational database management system comprising:

a relational data store configured to store fact data;

a multi-dimensional data store configured to store aggregated fact data in a multi-dimensional data structure and to communicate bi-directionally with the relational data store;

a communication interface operably connected between the relational data store and the multi-dimensional data store for communication of fact data from the relational data store to the multi-dimensional data store and for the communication of aggregated fact data from the multi-dimensional data store to the relational data store; and

a computer system comprising computer hardware, the computer system programmed to implement:

a query servicing mechanism configured to service one or more natural language queries from a user, the query servicing mechanism comprising:

a query processing mechanism configured to process a given natural language query using operations to:

make a determination of whether servicing the given natural language query needs data stored in the relational data store or multi-dimensional data store;

upon a determination that servicing the given natural language query needs data stored in the relational data store,

 automatically route the given natural language query to the relational data store, so that data is accessed from the relational data store and forwarded to the query processing mechanism for use in servicing the given natural language query, in a manner transparent to the user; and

wherein upon a determination that servicing the given natural language query needs data stored in the multi-dimensional data store,

automatically route the given natural language query to the multi-dimensional data store, so that aggregated fact data can be accessed and forwarded to the query processing mechanism for use in servicing the given natural language query, in a manner transparent to the user.

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

3. The relational database management system of claim 1 , wherein the computer system is configured to receive the given natural language query from a user via a web-enabled browser, and the computer system is configured to communicate the given natural language query to the query servicing mechanism.

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

5. The relational database management system of claim 4 , wherein the computer system is configured to calculate the aggregated fact data on demand and to store the aggregated fact data in the multi-dimensional data store.

6. The relational database management system of claim 4 , wherein the multi-dimensional data aggregation process comprises:

(i) determining if the aggregated fact data needed to service the given natural language query is already pre-calculated and stored within the multi-dimensional data store, and

in response to determining that the aggregated fact data needed to service the given natural language query is already pre-calculated and stored within the multi-dimensional data store,

retrieving the pre-calculated aggregated fact data and returning the retrieved pre-calculated aggregated fact data to the query processing mechanism; and

(ii) in response to determining that the needed aggregated fact data is not already pre-aggregated and stored within the multi-dimensional data store, calculating the needed aggregated fact data on demand, and automatically forwarding the aggregated fact data to the query processing mechanism.

7. A computer-implemented method comprising:

by a computer system comprising computer hardware:

receiving one or more natural language queries from a user;

determining whether servicing a given natural language query of the one or more natural language queries needs data stored in a relational data store or in a multi-dimensional data store, wherein the relational data store is configured to communicate fact data to the multi-dimensional data store and the multi-dimensional data store is configured to communicate aggregated fact data to the relational data store,

wherein the relational data store stores fact data and the multi-dimensional data store data store stores aggregated fact data

in a multi-dimensional data structure;

in response to determining that servicing the given natural language query needs data stored in the relational data store,

automatically routing the given natural language query to the relational data store, so that fact data is accessed from the relational data store and forwarded to the user; and

in response to determining that servicing the given natural language query needs data stored in the multi-dimensional data store,

automatically routing the given natural language query to the multi-dimensional data store, so that aggregated fact data can be accessed and forwarded to the user.

8. The method of claim 7 , wherein the user interacts with a web-enabled browser to generate a natural language query, and the natural language query is communicated to the computer system.

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

10. The method of claim 9 , wherein the aggregated fact data is calculated on demand and stored in the multi-dimensional data store.

11. The method of claim 7 , wherein the multi-dimensional data aggregation process comprises:

(i) in response to determining that the aggregated fact data needed to service the given natural language query is already pre-calculated and stored within the multi-dimensional data store, then the pre-calculated fact data is retrieved and returned to the user; and

(ii) in response to determining that the needed fact data is not already pre-aggregated and stored within the multi-dimensional data store, then the needed aggregated fact data is calculated on demand, and the aggregated fact data is automatically forwarded to the user.

12. A tangible computer-readable medium encoded with instructions that, in response to execution by a computing device, cause the computing device to perform operations comprising:

receiving one or more natural language queries from a user;

determining whether servicing a given natural language query needs data stored in a relational data store or a multi-dimensional data store,

wherein the relational data store stores fact data and the multi-dimensional data store data store stores aggregated fact data, formed via a segmented aggregation process involving aggregation along multiple dimensions in a determined sequence, in a multi-dimensional data structure, and wherein the multi-dimensional data store is configured to communicate bi-directionally with the relational data store;

in response to determining that servicing the given natural language query needs data stored in the relational data store,

automatically routing the given natural language query to the relational data store, so that data is accessed from the relational data store and forwarded to the user; and

in response to determining that servicing the given natural language query needs data stored in the multi-dimensional data store formed via the segmented aggregation process,

automatically routing the given natural language query to the multi-dimensional data store, so that aggregated fact data can be accessed and forwarded to the user.

13. The tangible computer-readable medium of claim 12 , wherein the user interacts with a web-enabled browser to generate a natural language query, and the natural language query is communicated to the computing device.

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

15. The tangible computer-readable medium of claim 14 , wherein the aggregated fact data is calculated on demand and stored in the multi-dimensional data store.

16. The tangible computer-readable medium of claim 14 , wherein the multi-dimensional data aggregation process comprises:

(i) in response to determining that the aggregated fact data needed to service the given natural language query is already pre-calculated and stored within the multi-dimensional data store, then the pre-calculated aggregated fact data is retrieved and returned to the user; and

(ii) in response to determining that the needed aggregated fact data is not already pre-aggregated and stored within the multi-dimensional data store, then the needed aggregated fact data is calculated on demand, and the aggregated fact data is automatically forwarded to the user.

Assignments (10)
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 19, 2010
From: HR ASSET HOLDINGS, INC.
To: YANICKLO TECHNOLOGY LIMITED LIABILITY COMPANY
Reel/Frame 024860/0106 →
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 Nov 10, 2009
From: HYPERROLL ISRAEL, LTD.
To: HYPERROLL, INC.
Reel/Frame 023486/0795 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2009
From: BAKALASH, REUVEN; SHAKED, GUY; CASPI, JOSEPH
To: HYPERROLL ISRAEL, LTD.
Reel/Frame 023456/0705 →
LICENSE Recorded Oct 27, 2009
From: HYPERROLL, INC.
To: HYPERION SOLUTIONS CORPORATION
Reel/Frame 023427/0597 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2009
From: BAKALASH, REUVEN; SHAKED, GUY; CASPI, JOSEPH
To: HYPERROLL, ISRAEL LIMITED
Reel/Frame 022878/0294 →