Extensible data provider querying and scheduling system
First Claim
1. A system comprising:
- one or more computer-readable storage media;
a querying/scheduling system embodied on the one or more computer-readable storage media, the querying/scheduling system being configured to enable one or more applications to access different data sources and have data stored in the data sources returned to the one or more applications;
the querying/scheduling system comprising a data model that is configured to create one or more data providers that are knowledgeable of how to access data stored in an associated data source, at least some of the data providers created on a thread that is a same thread as the data model andthe querying/scheduling system being extensible and configured to enable one or more extensible data providers to be plugged into the querying/scheduling system effective to query one or more associated extensible data sources using one or more query methods, at least some of the query methods being different than a common query method used by the data model to query the one or more extensible data providers.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments provide an independent layer between an application user interface and various data sources so that both the user interface and data sources can be added to, removed, or modified without affecting the other. The independent layer provides scalability to allow data sources and data providers to be plugged into a system in an easy manner. In one or more embodiments, the independent layer provides a common set of query APIs that can be used by client applications to make queries on one or more data sources. The independent layer then communicates the queries to one or more data providers associated with individual data sources. Queries are executed on the data sources and results are returned back up through the data providers and independent layer for consumption by a client application. In at least some embodiments, the client application comprises a web browser that makes use of the independent layer.
25 Citations
20 Claims
-
1. A system comprising:
-
one or more computer-readable storage media; a querying/scheduling system embodied on the one or more computer-readable storage media, the querying/scheduling system being configured to enable one or more applications to access different data sources and have data stored in the data sources returned to the one or more applications; the querying/scheduling system comprising a data model that is configured to create one or more data providers that are knowledgeable of how to access data stored in an associated data source, at least some of the data providers created on a thread that is a same thread as the data model and the querying/scheduling system being extensible and configured to enable one or more extensible data providers to be plugged into the querying/scheduling system effective to query one or more associated extensible data sources using one or more query methods, at least some of the query methods being different than a common query method used by the data model to query the one or more extensible data providers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system comprising:
-
one or more computer-readable storage media; an extensible querying/scheduling system embodied on the one or more computer-readable storage media, the querying/scheduling system being configured to present a common access mechanism that is configured to be used by a Web browser to access different data sources and have data stored in the data sources returned to the Web browser, wherein at least some individual data sources store data in different formats and are configured to have their own specific access mechanisms of which said Web browser is unaware, wherein the querying/scheduling system comprises a data model that is configured to create one or more data providers, individual data providers being associated with individual data sources and being knowledgeable of how to access data stored in an associated data source, the one or more data providers being configured to receive queries for data from the extensible query/scheduling system, at least some of the data providers configured to execute queries using a different thread than the data model, and at least some of the data providers created on a thread that is a same thread as the data model. - View Dependent Claims (14)
-
-
15. A computer-implemented method comprising:
-
receiving, from a Web browser and with a data model, a search query, wherein the data model exposes an access mechanism that is configured to be used to access different data sources storing different types of data, wherein said different data sources comprise one or more of a favorites data source, a history data source, and/or an RSS data source; ascertaining one or more data providers identified in the search query, wherein at least some of the data providers are configured to be created on a thread that is a same thread as the data model; issuing the search query to one or more identified data providers; conducting a search query of one or more data sources associated with said one or more data providers, at least one of the said one or more data providers utilizing multiple threads; receiving search results with the data model; and returning the search results to the Web browser. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification