Relational database management system (RDBMS) employing a relational datastore and a multi-dimensional database (MDDB) for serving query statements from client machines
First Claim
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.
10 Assignments
0 Petitions
Accused Products
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.
338 Citations
16 Claims
-
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; andwherein 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. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
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. - View Dependent Claims (8, 9, 10, 11)
-
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. - View Dependent Claims (13, 14, 15, 16)
Specification