Patent ID: 7779031
Filing Date: 2010-08-17
Classification: G06F

Abstract:
1. A method comprising: receiving, from an enterprise software application, a query by a data access service executed by a computing device, the data access service being positioned between the enterprise software application and a plurality of multidimensional data sources, wherein the query conforms to a multidimensional query language specifying a set of multidimensional operations, and wherein the multidimensional data sources are supplied by different vendors and provide different implementations of the set of multidimensional operations; parsing the multidimensional query into a plurality of execution units by the data access service executed by the computing device, wherein the execution units specify multidimensional operations required to perform the query; retrieving, by the data access service, control information from an execution control document associated with a target one of the multidimensional data sources wherein the execution control document includes a plurality of entries, wherein each entry comprises a set of 4-tuples, each 4-tuple comprising (1) data specifying a multidimensional operation supported by the multidimensional query language, (2) data providing an indication of whether a local multidimensional calculation engine of the data access service is capable of performing the specified multidimensional operation, (3) data providing an indication of whether a multidimensional calculation engine within the target multidimensional data source can perform the specified multidimensional operation, and (4) data providing a preference as to whether the specified multidimensional operation should be performed; identifying, within the execution control document, preferences for executing the set of multidimensional operations of the execution units using the local multidimensional calculation engine of the data access service or calculation engines of the target multidimensional data source; for each of the execution units: executing each of the multidimensional execution units locally by a multidimensional calculation engine within the data access service or remotely using a query processing engine of the target data source based on the designation, wherein the multidimensional calculation engine is executed by the computing device.