Patent ID: 8606813

Claim:
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.