COMPUTER DATA SYSTEM DATA SOURCE REFRESHING USING AN UPDATE PROPAGATION GRAPH
First Claim
Patent Images
1. A system for updating a data object using an update propagation graph, the system comprising:
- one or more hardware processors coupled to a nontransitory computer readable medium having stored thereon software instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including;
determining a logical clock has transitioned to an updating state;
processing one or more changes to one or more corresponding data sources, wherein the changes are processed according to an order determined by an update propagation graph (UPG) having one or more nodes each corresponding to one of the data sources, wherein change processing for each data source includes;
invoking a data source refresh method for a data source for which changes are being processed;
determining whether a priority queue for the data source is empty;
when the priority queue is not empty, retrieving a next change notification message from the priority queue and delivering the change notification to a corresponding data source and repeating determining whether the priority is queue is empty; and
when the priority queue is empty, setting the logical clock to an idle state.
3 Assignments
0 Petitions
Accused Products
Abstract
Described are methods, systems and computer readable media for data source refreshing.
37 Citations
20 Claims
-
1. A system for updating a data object using an update propagation graph, the system comprising:
one or more hardware processors coupled to a nontransitory computer readable medium having stored thereon software instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including; determining a logical clock has transitioned to an updating state; processing one or more changes to one or more corresponding data sources, wherein the changes are processed according to an order determined by an update propagation graph (UPG) having one or more nodes each corresponding to one of the data sources, wherein change processing for each data source includes; invoking a data source refresh method for a data source for which changes are being processed; determining whether a priority queue for the data source is empty; when the priority queue is not empty, retrieving a next change notification message from the priority queue and delivering the change notification to a corresponding data source and repeating determining whether the priority is queue is empty; and when the priority queue is empty, setting the logical clock to an idle state. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
11. A method for updating a data object using an update propagation graph, the method comprising:
-
determining a logical clock has transitioned to an updating state; processing one or more changes to one or more corresponding data sources, wherein the changes are processed according to an order determined by an update propagation graph (UPG) having one or more nodes each corresponding to one of the data sources, wherein change processing for each data source includes; invoking a data source refresh method for a data source for which changes are being processed; determining whether a priority queue for the data source is empty; when the priority queue is not empty, retrieving a next change notification message from the priority queue and delivering the change notification to a corresponding data source and repeating determining whether the priority is queue is empty; and when the priority queue is empty, setting the logical clock to an idle state. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A nontransitory computer readable medium having stored thereon software instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including:
-
determining a logical clock has transitioned to an updating state; processing one or more changes to one or more corresponding data sources, wherein the changes are processed according to an order determined by an update propagation graph (UPG) having one or more nodes each corresponding to one of the data sources, wherein change processing for each data source includes; invoking a data source refresh method for a data source for which changes are being processed; determining whether a priority queue for the data source is empty; when the priority queue is not empty, retrieving a next change notification message from the priority queue and delivering the change notification to a corresponding data source and repeating determining whether the priority is queue is empty; and when the priority queue is empty, setting the logical clock to an idle state.
-
Specification