IP Library Patent Application 11825644
Patent Application
App. No. 11/825,644

Relational database management system (RDBMS) employing multi-dimensional database (MDDB) for servicing query statements through one or more client machines

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 None
App. No.
11/825,644
Abstract

A relational database management system (RDBMS) for servicing query statements through one or more client machines. The RDBMS comprises a query interface adapted to receive query statements from the client machines. The query handling mechanism (i) receives each request from the query interface, (ii) extracts a set of dimensions associated with the request, (iii) uses the dimensions to retrieve aggregated fact data from a multi-dimensional database (MDDB), and (iv) forwards retrieved aggregated fact data to the query processing mechanism for subsequent processing. When the query processing mechanism determines that servicing of one or more query requests require data stored in the relational tables, then the query processing 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.

Claims (30)

1 . A relational database management system (RDBMS) for servicing query statements through one or more client machines, said RDBMS comprising:

a RDBMS query interface adapted to receive query statements from said one or more client machines;

a query processing mechanism for processing each query statement received from said RDBMS query interface, and generating one or more query requests by disintegrating the query statement so that each said query request specifies a set of dimensions;

a query handling mechanism operably coupled to said RDBMS query interface; and

a relational data store having relational tables for storing fact data, and a meta-data store for storing a dictionary containing dimension data;

a multi-dimensional database (MDDB) for storing aggregated fact data in a multi-dimensional data structure;

a data loading mechanism for loading said meta-data and said fact data into said MDDB;

an aggregation engine for calculating aggregated fact data from the fact data according to a multi-dimensional data aggregation process;

a data handling mechanism for storing aggregated fact data in said MDDB and retrieving aggregated fact data from said MDDB;

wherein said query handling mechanism (i) receives each query request, (ii) extracts a set of dimensions associated with said query request, (iii) uses said dimensions to retrieve aggregated fact data from said MDDB, and (iv) forwards retrieved aggregated fact data to said query processing mechanism for subsequent processing, if needed; and

wherein when said query processing mechanism determines that servicing of one or more query requests require data stored in said relational tables, then said query processing mechanism automatically routes said one or more query requests to said relational data tables, so that data can be accessed from said relational tables and forwarded to said query processing mechanism for use in servicing said one or more query requests, in a manner transparent to said client machine; and

wherein when said query processing mechanism determines that servicing of one or more query requests require aggregated data stored in said MDDB, then said query processing mechanism automatically routes said one or more query requests to said MDDB, so that aggregated data can be accessed from said MDDB and forwarded to said query processing mechanism for use in servicing said one or more query requests, in a manner transparent to said client machine.

2 . The RDBMS of claim 1 , wherein said a query handling mechanism comprises:

an RDBMS query handler operably coupled to said RDBMS query interface; and

a MDDB query handler operably coupled to a first data communication interface, for (i) receiving each query request from said RDBMS query handler, (ii) extracting a set of dimensions associated with said query request, (iii) providing said dimensions to said data handling mechanism so that said data handling mechanism can retrieve aggregated fact data from said MDDB, and (iv) forwarding retrieved aggregated fact data to said RDBMS query processing mechanism for subsequent processing, if needed; and

3 . The RDBMS of claim 1 , where said data loading mechanism is in data communication with said relational data store by way of a second data communication interface, for loading said meta-data and said fact data into said MDB.

4 . The RDBMS of claim 1 , wherein after data loading operations, the fact data is initially aggregated along at least one of the dimensions extracted from said dictionary and aggregated multi-dimensional data results are stored in said MDDB, and

wherein during query servicing operations, the fact data is aggregated on demand along additional dimensions extracted from said query request and aggregated multi-dimensional data results are stored in said MDDB.

5 . The RDBMS of claim 3 , wherein said multi-dimensional data structure comprises a plurality of data storage cells, and wherein each said data storage cell is indexed with multiple dimensions and stores either base data values or aggregated multi-dimensional data values.

6 . The RDBMS of claim 3 , wherein during data loading operations, said data loading mechanism extracts dimension data from the dictionary in said meta-data store, and forwards the dimension data over said first data communication interface to said aggregation engine and configures said MDDB using said dimension data.

7 . The RDBMS of claim 3 , wherein during aggregation operations, said data loading mechanism extracts fact data from said relational tables, and forwards the fact data to said aggregation engine over said first data communication interface; and wherein said aggregation engine calculates aggregated multi-dimensional data from the fact data according to said multi-dimensional data aggregation process, and stores the aggregated multi-dimensional data in said MDDB specified by a set of multi-dimensional coordinates.

8 . The RDBMS of claim 1 , wherein said query statement is an SQL-type query statement and each query request is an SQL-type query request.

9 . The RDBMS of claim 2 , wherein said first data communication interface is a standard interface selected from the group selected from OLDB, OLE-DB, ODBC, SQL, API, and JDBC.

10 . The RDBMS of claim 3 , wherein said second data communication interface is a standard interface selected from the group selected from OLDB, OLE-DB, ODBC, SQL, API, and JDBC.

11 . The RDBMS of claim 1 , wherein said RDBMS query interface is implemented in a module within said RDBMS.

12 . The RDBMS of claim 1 , wherein a user interacts with said client machine using a web-enabled browser to generate a natural language type query statement, and said natural language type query statement is communicated to said RDBMS query interface.

13 . The RDBMS of claim 2 , wherein said MDDB query handler further includes means for transforming each query request so as to optimize the query request for efficient query handling.

14 . The RDBMS of claim 2 , wherein said MDDB query handler further includes an adapter for mapping the data types of the query statement issued by said RDBMS query handler, and/or for mapping a standard data type used to represent the query request issued by said RDBMS query handler into the data types used in said MDD aggregation module.

15 . The RDBMS of claim 1 , wherein said multi-dimensional aggregation process supported by said aggregation engine further operates as follows:

(a) if the aggregated multi-dimensional data required to service a given query statement is already pre-calculated and stored within said MDDB, then the pre-aggregated multi-dimensional data is retrieved by said data handling mechanism and returned to said client machine via said RDBMS query handler; and (b) if the required multi-dimensional data is not already pre-aggregated and stored within said MDDB, then the required aggregated multi-dimensional data is calculated on demand by said aggregation engine, and the aggregated multi-dimensional data result is automatically forwarded to said client machine.

Assignments (7)
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 050145/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2010
From: HR ASSET HOLDINGS, INC.
To: YANICKLO TECHNOLOGY LIMITED LIABILITY COMPANY
Reel/Frame 025184/0233 →
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 →