IP Library Patent Application 13154400
Patent Application
App. No. 13/154,400

DYNAMIC DISTRIBUTED QUERY EXECUTION OVER HETEROGENEOUS SOURCES

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
13/154,400
Abstract

An execution strategy is generated for a program that interacts with data from multiple heterogeneous data sources during program execution as a function of data source capabilities and costs. Portions of the program can be executed locally and/or remotely with respect to the heterogeneous data sources and results combined.

Claims (25)

1 . A method of facilitating data access, comprising:

employing at least one processor configured to execute computer-executable instructions stored in memory to perform the following acts:

generating an execution strategy for a program that acquires data from multiple heterogeneous data sources during program execution as a function of data source capability and cost.

2 . The method of claim 1 further comprises determining the cost as a function of a cost model standard across the heterogeneous data sources.

3 . The method of claim 2 , determining the cost from a weighted computation of multiple factors.

4 . The method of claim 1 further comprises acquiring the cost from a data source in response to a request for the cost.

5 . The method of claim 1 further comprises determining the cost as a function of data source interaction.

6 . The method of claim 1 further comprises locally executing at least a portion of the program.

7 . The method of claim 1 further comprises transforming the program from a first form to a second standard form.

8 . The method of claim 7 further comprises applying one or more optimizations to the standard form of the program.

9 . The method of claim 1 further comprises initiating distribution of at least a subset of the program on one of the heterogeneous data sources.

10 . A system that facilitates program execution, comprising:

a processor coupled to a memory, the processor configured to execute the following computer-executable components stored in the memory:

a first component configured to generate a strategy for execution of a query specified over multiple heterogeneous data sources based on data source capability and cost.

11 . The system of claim 10 , the first component is configured to generate the strategy lazily at runtime.

12 . The system of claim 10 further comprises a second component configured to execute at least a portion of the query locally.

13 . The system of claim 10 further comprises a second component configured to request at least one of the capability or the cost from one of the data sources.

14 . The system of claim 10 further comprises a second component configured to infer the capability or the cost as a function of historical interaction with one of the data sources.

15 . The system of claim 10 further comprises a second component configured to normalize the cost across two or more of the heterogeneous data sources.

16 . The system of claim 10 further comprises a second component configured to distribute portions of the query to one or more of the heterogeneous data sources in accordance with the strategy.

17 . A computer-readable storage medium having instructions stored thereon that enables at least one processor to perform the following acts:

determining an execution strategy for a computer executable program, configured to merge data acquired from multiple heterogeneous data sources, dynamically as a function of one or more capabilities of the data sources or one or more costs of interacting with the data sources.

18 . The computer-readable storage medium of claim 17 further comprising initiating distribution of at least a portion of the program to one of the data sources for execution in accordance with the execution strategy.

19 . The computer-readable storage medium of claim 18 further comprising initiating local execution of the at least a portion of the program upon execution failure.

20 . The computer-readable storage medium of claim 17 further comprising initiating local execution of at least a portion of the program in accordance with the execution strategy.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034544/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2011
From: HUGHES, GREGORY; COULSON, MICHAEL; TERWILLIGER, JAMES; SZYPERSKI, CLEMENS
To: MICROSOFT CORPORATION
Reel/Frame 026414/0447 →