System and method for function selection in analytic processing
First Claim
1. A system for selection of resources to process functions relating to at least one data source, the at least one data source having an associated computation engine, comprising:
- an interface to at least one external computation engine on a different machine than the at least one data source;
an interface to the at least one data source and its associated internal computation engine; and
a selection engine, the selection engine configured to;
communicate with the interface to the at least one external computation engine;
communicate with the interface to the at least one data source;
receive a request for processing at least a first function and a second function, wherein the first function is dependent on the second function;
analyze the request based on one or more rules;
determine a processing order based on the dependency of the first function and the second function;
determine whether the at least one external computation engine is capable of performing the first function and second function in the request based on the analysis;
determine whether the internal computation engine is capable of performing the first function and second function in the request based on the analysis; and
select either the at least one external computation engine or the internal computation engine to perform the first function and the second function, wherein the performance of the first function and the second function is based on the processing order.
2 Assignments
0 Petitions
Accused Products
Abstract
A selection engine for a cooperative processing network, in which databases compute portions of searches and analyses which they may most efficiently compute. A data mining network may contain large scale databases, analytic engines which communicate with the databases, and other resources, each capable of performing or executing certain functions, such as statistical functions. When a user desires to run a specified report against the databases, those functions that can be computed locally in the database are trapped and computed therein, whereas other functions, such as advanced statistical functions, may be distributed to remote analytic engines or other resources in the network. A management module may coordinate the transmission and assembly of the data, including to order dependencies. The management module may contain a selection engine to allocate computations to databases or other resources as a default, to test for load balancing before choosing a compute site, or apply other criteria.
36 Citations
21 Claims
-
1. A system for selection of resources to process functions relating to at least one data source, the at least one data source having an associated computation engine, comprising:
-
an interface to at least one external computation engine on a different machine than the at least one data source; an interface to the at least one data source and its associated internal computation engine; and a selection engine, the selection engine configured to; communicate with the interface to the at least one external computation engine; communicate with the interface to the at least one data source; receive a request for processing at least a first function and a second function, wherein the first function is dependent on the second function; analyze the request based on one or more rules; determine a processing order based on the dependency of the first function and the second function; determine whether the at least one external computation engine is capable of performing the first function and second function in the request based on the analysis; determine whether the internal computation engine is capable of performing the first function and second function in the request based on the analysis; and select either the at least one external computation engine or the internal computation engine to perform the first function and the second function, wherein the performance of the first function and the second function is based on the processing order. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for selection of resources to process functions, comprising:
-
determining at least a first function and a second function required by at least one processing request, wherein the first function is dependent on the second function; determining a processing order based on the dependency of the first function and the second function; analyzing the first function and the second function to determine whether the first function and the second function are capable of being processed by an external computation engine unassociated with a data source and to determine whether the first function and the second function are capable of being processed by an internal computation engine associated with the data source; selecting either the external computation engine or the internal computation engine to perform the first function, wherein the selection is made based on one or more rules and the analysis of the first function and the second function; selecting either the external computation engine or the internal computation engine to perform the second function, wherein the selection is made based on one or more rules and the analysis of the first function and the second function; and wherein the performance of the first function and the performance of the second function are based on the processing order. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory machine readable medium, the machine readable medium being readable to execute a method for selection of resources to process functions, the method comprising:
-
determining at least a first function and a second function required by at least one processing request, wherein the first function is dependent on the second function; determining a processing order based on the dependency of the first function and the second function; analyzing the first function and the second function to determine whether the first function and the second function are capable of being processed by an external computation engine unassociated with a data source and to determine whether the first function and the second function are capable of being processed by an internal computation engine associated with the data source; selecting either the external computation engine or the internal computation engine to perform the first function, wherein the selection is made based on one or more rules and the analysis of the first function and the second function; selecting either the external computation engine or the internal computation engine to perform the second function, wherein the selection is made based on one or more rules and the analysis of the first function and the second function; and wherein the performance of the first function and the performance of the second function are based on the processing order. - View Dependent Claims (21)
-
Specification