Query aggregation
AssigneeMicrosoft Corporation
InventorsHoward J. Dickerman, Kaicheng Hu
Life of this patent
Estimating the term…
Abstract
An aggregated query is used to fetch data from a multidimensional database, such as an OLAP cube. The aggregated query combines individual queries that are used to fetch data from the multidimensional database into a single query. A determination is made as to what dimensions and hierarchies of the multidimensional database are used by the queries that are contained as cube functions within formulas in cells of a spreadsheet. Based on the dimensions and hierarchies that are used within the multidimensional database, a tuple for each of the individual queries is created that has the same dimensionality. These tuples having the same dimensionality are then combined to create the aggregated query.
Claims20
A computer-implemented method for fetching data from a multidimensional database, comprising:
- determining cube queries that are contained within cells of a spreadsheet;
- wherein the cube queries require data to be fetched from the multidimensional database;
- determining dimensions and hierarchies within the multidimensional database that are used by the cube queries;
- and
- creating an aggregated query by combining the cube queries.
A computer-readable medium having computer-executable instructions for interacting with an OLAP cube, comprising:
- parsing cube queries having parameters;
- wherein the cube queries may be included within cells of a spreadsheet and wherein the cube queries are directed at obtaining data from the OLAP cube;
- determining dimensions of the OLAP cube that identify the data to be obtained from the OLAP cube;
- creating a tuple having the determined number of dimensions for each of the cube queries;
- creating a single aggregated query by combining the tuples having the determined number of dimensions;
- and
- fetching the data from the OLAP cube using the single aggregated query.
A system for fetching data from a multidimensional database from a spreadsheet, comprising:
- a spreadsheet application that is coupled to a network and is configured to perform steps, comprising:
- including MDX queries within cells of the spreadsheet;
- wherein the MDX queries request data within the multidimensional database;
- constructing an aggregated MDX query to request the data of the included MDX queries;
- querying a server using the aggregated MDX query;
- receiving data returned in response to the aggregated MDX query;
- and
- updating the cell and any other dependent cells within the spreadsheet in response to the received data;
- and
- the server that is coupled to a network and the spreadsheet application, and wherein the server, comprises:
- an application that is configured to perform actions, comprising:
- receive the aggregated MDX query;
- and
- attempting to obtain the requested data;
- and when successful in obtaining the requested data delivering the data to the spreadsheet application.
Dependencies are inferred from the claim text.