Dynamic join processing using real time merged notification listener
First Claim
Patent Images
1. A memory and processor efficient computer system for dynamic updating of join operations, the system comprising:
- one or more processors;
computer readable storage coupled to the one or more processors, the computer readable storage having stored thereon instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including;
receiving a join-based query directed to a remote query processor that contains two or more input tables to be joined;
adding a node for each table providing input to the join operation to an update propagation graph;
adding a join operation results node to the update propagation graph for holding results of executing the join-based query;
adding a real-time merged notification listener for the join operation node in the update propagation graph;
applying the join operation to the two or more input tables using indexes from the two or more input tables to identify and retrieve data needed for the join operation in order to minimize local memory and processor usage;
using the real-time merged notification listener for the join operation node to listen for any changes to the joined two or more input tables in order to minimize local memory and processor usage by only conducting a join operation when a change has been detected; and
when the real-time merged notification listener receives notification of changes to any of the joined two or more input tables, using indexes from the two or more input tables to apply the join operation only to the changes to update the join operation results node only for changed index ranges in order to minimize local memory and processor usage.
3 Assignments
0 Petitions
Accused Products
Abstract
Described are methods, systems and computer readable media for dynamic join operations.
-
Citations
27 Claims
-
1. A memory and processor efficient computer system for dynamic updating of join operations, the system comprising:
-
one or more processors; computer readable storage coupled to the one or more processors, the computer readable storage having stored thereon instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including; receiving a join-based query directed to a remote query processor that contains two or more input tables to be joined; adding a node for each table providing input to the join operation to an update propagation graph; adding a join operation results node to the update propagation graph for holding results of executing the join-based query; adding a real-time merged notification listener for the join operation node in the update propagation graph; applying the join operation to the two or more input tables using indexes from the two or more input tables to identify and retrieve data needed for the join operation in order to minimize local memory and processor usage; using the real-time merged notification listener for the join operation node to listen for any changes to the joined two or more input tables in order to minimize local memory and processor usage by only conducting a join operation when a change has been detected; and when the real-time merged notification listener receives notification of changes to any of the joined two or more input tables, using indexes from the two or more input tables to apply the join operation only to the changes to update the join operation results node only for changed index ranges in order to minimize local memory and processor usage. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A method for dynamic updating of join operations, the method comprising:
-
receiving a join-based query directed to a remote query processor that contains two or more input tables to be joined; adding a node for each table providing input to the join operation to an update propagation graph; adding a join operation results node to the update propagation graph for holding results of executing the join-based query; adding a real-time merged notification listener for the join operation node in the update propagation graph; applying the join operation to the two or more input tables using indexes from the two or more input tables to identify and retrieve data needed for the join operation in order to minimize local memory and processor usage; and using the real-time merged notification listener for the join operation node to listen for any changes to the joined two or more input tables in order to minimize local memory and processor usage by only conducting a join operation when a change has been detected. - View Dependent Claims (22, 23)
-
-
24. A nontransitory computer readable medium having stored thereon software instructions that, when executed by one or more processors, cause the one or more processors to perform operations including:
-
receiving a join-based query directed to a remote query processor that contains two or more input tables to be joined; adding a node for each table providing input to the join operation to an update propagation graph; adding a join operation results node to the update propagation graph for holding results of executing the join-based query; adding a real-time merged notification listener for the join operation node in the update propagation graph; applying the join operation to the two or more input tables using indexes from the two or more input tables to identify and retrieve data needed for the join operation in order to minimize local memory and processor usage; and using the real-time merged notification listener for the join operation node to listen for any changes to the joined two or more input tables in order to minimize local memory and processor usage by only conducting a join operation when a change has been detected. - View Dependent Claims (25, 26)
-
-
27. A memory and processor efficient computer system for dynamic updating of join operations, the system comprising:
-
one or more processors; computer readable storage coupled to the one or more processors, the computer readable storage having stored thereon instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including; receiving a join-based query digitally directed to a remote query processor that contains two or more input tables to be joined; adding a node for each table providing input to the join operation to an update propagation structure; adding a join operation results node to the update propagation structure for holding results of executing the join-based query; adding a real-time merged notification listener for the join operation node in the update propagation structure; and when the real-time merged notification listener receives notification of changes to any of the joined two or more input tables, using indexes from the two or more input tables to apply the join operation only to the changes to update the join operation results node only for changed index ranges in order to minimize local memory and processor usage.
-
Specification