Ranking query optimization in analytic applications
AssigneeInformatica Corporation
InventorsSanjatha Shringeri, Joy Hsu
Life of this patent
Estimating the term…
Abstract
A method of optimizing ranking queries in analytic applications. The method involves dividing a ranking query constructed by a user into multiple sub-commands. These sub-commands are based on the relationship between the foreign key and ranking attributes of a table of data and are run as a batch of commands. As usable data is extracted from each sub-command, it is stored and the foreign key is used as a filter for the next query in the batch. This eliminates accessing irrelevant data and facilitates the query operation. The extracted data is joined as the last step of the process in order to minimize the number of join operations performed by the query while the batch is being executed, thereby facilitating the query process.
Claims17
A method for facilitating access to database information defined by an analytic application, said method comprising the steps of:
- a) receiving operational data from a data source;
- b) generating metrics from said operational data using said analytic application;
- c) receiving a multi-level ranking query from a user, wherein said multi-level ranking query requires successive rankings of said metrics;
- d) dividing said multi-level ranking query into a first part that defines a first subset of the metrics from said operational data and a second part that defines a second subset of the metrics from said operational data;
- e) executing said first part of said multi-level ranking query, wherein said first part executes a first ranking of said first subset only;
- f) executing said second part of said multi-level ranking query, wherein said second part executes a second ranking of metrics from said first ranking;
- and
- g) joining stored usable data extracted from a first table of data that is generated as a result of said first ranking with stored usable data extracted from a second table of data that is generated as a result of said second ranking.
A computer system comprising:
- a bus;
- a memory unit coupled to said bus;
- and
- a processor coupled to said bus, said processor for executing a method for facilitating access to database information defined by an analytic application, said method comprising the steps of:
- a) receiving operational data from a data source;
- b) generating metrics from said operational data using said analytic application;
- c) receiving a multi-level ranking query from a user, wherein said multi-level ranking query requires succesive rankings of said metrics;
- d) dividing said multi-level ranking query into a first part that defines a first subset of the metrics from said operational data and a second part that defines a second subset of the metrics from said operational data;
- e) executing said first part of said multi-level ranking query, wherein said first part executes a first ranking of said first subset only;
- f) executing said second part of said multi-level ranking query, wherein said second part executes a second ranking of metrics from said first ranking;
- and
- g) joining stored usable data extracted from a first table of data that is generated as a result of said first ranking with stored usable data extracted from a second table of data that is generated as a result of said second ranking.
A computer usable medium having computer-readable program code embodied therein for causing a computer system to perform the steps of:
- a) receiving operational data from a data source;
- b) generating metrics from said operational data using said analytic application;
- c) receiving a multi-level ranking query from a user, wherein said multi-level ranking query requires successive rankings of said metrics;
- d) dividing said multi-level ranking query into a first part that defines a first subset of the metrics from said operational data and a second part that defines a second subset of the metrics from said operational data;
- e) executing said first part of said multi-level ranking query, wherein said first part executes a first ranking of said first subset only;
- f) executing said second part of said multi-level ranking query, wherein said second part executes a second ranking of metrics from said first ranking;
- and
- g) joining stored usable data extracted from a first table of data that is generated as a result of said first ranking with stored usable data extracted from a second table of data that is generated as a result of said second ranking.
Dependencies are inferred from the claim text.