×

Computer data system data source refreshing using an update propagation graph having a merged join listener

  • US 10,198,469 B1
  • Filed: 11/14/2017
  • Issued: 02/05/2019
  • Est. Priority Date: 08/24/2017
  • Status: Active Grant
First Claim
Patent Images

1. A system for updating a data object using update propagation graphs and merged join listeners to determine consistent join update processing, 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;

    receiving a request to perform a join operation on a plurality of objects;

    creating an update propagation graph (UPG) for propagating updates to a result of the join operation;

    adding a merged join listener to the UPG as a child of the plurality of objects;

    adding a join result structure to the UPG as a child of the merged join listener;

    propagating updates through the UPG, including the merged join listener combining update notifications from the plurality of objects for a given update clock cycle into a merged notification and delivering the merged notification to the join result structure'"'"'s node of the UPG during that clock cycle to provide a consistent representation of updates to all sides of the join operation to the join result structure node, the merged join listener combining comprising;

    for each current notification received at the merged join listener during the given update clock cycle;

    determining whether a priority queue includes an existing notification from the merged notification listener for the given clock cycle, the priority queue comprising a plurality of elements, each of the elements having an associated node of the UPG and an associated priority such that a first element with a first priority is served before a second element with a second priority lower than the first priority, the priority of each of the elements of the priority queue being determined based on an arrangement of nodes within the UPG,when the priority queue includes an existing notification from the merged notification listener for the given clock cycle, updating, responsive to the determining, the existing notification to include an additional notification based on the current notification, andwhen the priority queue does not include an existing notification from the merged notification listener for the given clock cycle, adding a new notification to the priority queue based on the current notification; and

    receiving the merged notification at the join result structure node and applying changes to update the result of the join operation in a consistent manner without having to re-execute the full join operation.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×