IP Library Granted Patent US 12688239
Granted Patent B2
US 12688239 · App. 18/614,733 · Granted Jul 21, 2026

Computer data distributing architecture for efficient distribution and synchronization of plotting processing and data

Inventors: Ryan Caudy (New York, NY); David R. Kent, IV (Colorado Springs, CO); Charles Wright (Cortlandt Manor, NY); Devon Patrick Allison (Colorado Springs, CO); Raffi Basralian (New York, NY)
Assignee: Deephaven Data Labs, LLC
G06F16/90335G06F3/0481G06F16/128G06F16/21G06F16/221G06F16/23G06F16/235G06F16/2358G06F16/2365G06F16/2372G06F16/27G06F16/289G06F16/532G06F16/901G06F16/9024G06F16/9038G06F16/904G06T11/26G06F12/0253G06F16/489
View Patent ↗
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 12688239
App. No.
18/614,733
Granted
Jul 21, 2026
Kind
B2
Abstract

Described are methods, systems and computer readable media for computer data distribution architecture for efficient distribution and synchronization of plotting processing and data.

Claims (86)

1 . A computer database 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:

creating, at a client computer, a switchable table object based on one or more initial values for one or more changeable values, the switchable table object having an active table setting, the switchable table object returning table data based on the active table;

transmitting, by the client computer, the one or more initial values to a remote query processor;

receiving, at the remote query processor, the one or more initial values;

creating, at the remote query processor, a preemptive table based on the one or more initial values;

transmitting, by the remote query processor, to the client computer an export table handle to the preemptive table;

receiving, at the client computer, the export table handle;

creating, at the client computer, a local copy of the preemptive table;

subscribing, by the client computer, to the remote query processor to receive consistent updates to the preemptive table;

setting, at the client computer, the local copy of the preemptive table to be the active table of the switchable table object;

displaying, at the client computer, a plot in a graphical user interface (GUI) based on the switchable table object, the plot being based on the active table set for the switchable table object;

determining, at the client computer, that one or more values of the one or more initial values has changed;

transmitting, by the client computer, the one or more changed values to the remote query processor;

receiving, at the remote query processor, the one or more changed values and determining, at the remote query processor, whether to create a new preemptive table based on the one or more changed values;

creating, at the remote query processor, a new preemptive table based on the one or more changed values and transmitting, by the remote query processor, to the client a new export table handle to the new preemptive table;

receiving, at the client computer, the new export table handle to the new preemptive table created based on the one or more changed values;

creating, at the client computer, a new local copy of the new preemptive table;

subscribing, by the client computer, to the remote query processor to receive consistent updates to the new preemptive table;

setting, at the client computer, the new local copy of the new preemptive table to be the active table of the switchable table object; and

updating, at the client computer, the display of the plot based on the active table of the switchable table object in response to the new local copy of the new preemptive table being set as the active table handle of the switchable table object;

processing, at the remote query processor, updates to the new preemptive table;

sending, by the remote query processor, the updates to the new preemptive table to the client computer;

receiving, at the client computer, the updates to the new preemptive table;

updating, at the client computer, the new local copy of the new preemptive table in response to receiving the updates to the new preemptive table; and

updating, at the client computer, the display of the plot in response to the new local copy of the new preemptive table being updated.

2 . The system of claim 1 , wherein the one or more changeable values are based on user input in a graphical user interface (GUI).

3 . The system of claim 1 , wherein the one or more changeable values are based on a one-click GUI input.

4 . The system of claim 1 , wherein determining, at the client computer, that one or more values of the one or more initial values has changed comprises determining that a user has changed a value of a GUI input field.

5 . A method comprising:

creating, at a client computer, a switchable table object based on one or more initial values for one or more changeable values, the switchable table object having an active table setting, the switchable table object returning table data based on the active table;

transmitting, by the client computer, the one or more initial values to a remote query processor;

receiving, at the remote query processor, the one or more initial values;

creating, at the remote query processor, a preemptive table based on the one or more initial values;

transmitting, by the remote query processor, to the client computer an export table handle to the preemptive table;

receiving, at the client computer, the export table handle;

creating, at the client computer, a local copy of the preemptive table;

subscribing, by the client computer, to the remote query processor to receive consistent updates to the preemptive table;

setting, at the client computer, the local copy of the preemptive table to be the active table of the switchable table object;

displaying, at the client computer, a plot in a graphical user interface (GUI) based on the switchable table object, the plot being based on the active table set for the switchable table object;

determining, at the client computer, that one or more values of the one or more initial values has changed;

transmitting, by the client computer, the one or more changed values to the remote query processor;

receiving, at the remote query processor, the one or more changed values and determining, at the remote query processor, whether to create a new preemptive table based on the one or more changed values;

creating, at the remote query processor, a new preemptive table based on the one or more changed values and transmitting, by the remote query processor, to the client a new export table handle to the new preemptive table;

receiving, at the client computer, the new export table handle to the new preemptive table created based on the one or more changed values;

creating, at the client computer, a new local copy of the new preemptive table;

subscribing, by the client computer, to the remote query processor to receive consistent updates to the new preemptive table;

setting, at the client computer, the new local copy of the new preemptive table to be the active table of the switchable table object; and

updating, at the client computer, the display of the plot based on the active table of the switchable table object in response to the new local copy of the new preemptive table being set as the active table handle of the switchable table object;

processing, at the remote query processor, updates to the new preemptive table;

sending, by the remote query processor the updates to the new preemptive table to the client computer;

receiving, at the client computer, the updates to the new preemptive table;

updating, at the client computer, the new local copy of the new preemptive table in response to receiving the updates to the new preemptive table; and

updating, at the client computer, the display of the plot in response to the new local copy of the new preemptive table being updated.

6 . The method of claim 5 , wherein the one or more changeable values are based on user input in a graphical user interface (GUI).

7 . The method of claim 5 , wherein the one or more changeable values are based on a one-click GUI input.

8 . The method of claim 5 , wherein determining, at the client computer, that one or more values of the one or more initial values has changed comprises determining that a user has changed a value of a GUI input field.

9 . 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:

creating, at a client computer, a switchable table object based on one or more initial values for one or more changeable values, the switchable table object having an active table setting, the switchable table object returning table data based on the active table;

transmitting, by the client computer, the one or more initial values to a remote query processor;

receiving, at the remote query processor, the one or more initial values;

creating, at the remote query processor, a preemptive table based on the one or more initial values;

transmitting, by the remote query processor, to the client computer an export table handle to the preemptive table;

receiving, at the client computer, the export table handle;

creating, at the client computer, a local copy of the preemptive table;

subscribing, by the client computer, to the remote query processor to receive consistent updates to the preemptive table;

setting, at the client computer, the local copy of the preemptive table to be the active table of the switchable table object;

displaying, at the client computer, a plot in a graphical user interface (GUI) based on the switchable table object, the plot being based on the active table set for the switchable table object;

determining, at the client computer, that one or more values of the one or more initial values has changed;

transmitting, by the client computer, the one or more changed values to the remote query processor;

receiving, at the remote query processor, the one or more changed values and determining, at the remote query processor, whether to create a new preemptive table based on the one or more changed values;

creating, at the remote query processor, a new preemptive table based on the one or more changed values and transmitting, by the remote query processor, to the client a new export table handle to the new preemptive table;

receiving, at the client computer, the new export table handle to the new preemptive table created based on the one or more changed values;

creating, at the client computer, a new local copy of the new preemptive table;

subscribing, by the client computer, to the remote query processor to receive consistent updates to the new preemptive table;

setting, at the client computer, the new local copy of the new preemptive table to be the active table of the switchable table object;

updating, at the client computer, the display of the plot based on the active table of the switchable table object in response to the new local copy of the new preemptive table being set as the active table handle of the switchable table object;

processing, at the remote query processor, updates to the new preemptive table;

sending, by the remote query processor the updates to the new preemptive table to the client computer;

receiving, at the client computer, the updates to the new preemptive table;

updating, at the client computer, the new local copy of the new preemptive table in response to receiving the updates to the new preemptive table; and

updating, at the client computer, the display of the plot in response to the new local copy of the new preemptive table being updated.

10 . The nontransitory computer readable medium of claim 9 , wherein the one or more changeable values are based on user input in a graphical user interface (GUI).

11 . The nontransitory computer readable medium of claim 9 , wherein the one or more changeable values are based on a one-click GUI input.

12 . The nontransitory computer readable medium of claim 9 , wherein determining, at the client computer, that one or more values of the one or more initial values has changed comprises determining that a user has changed a value of a GUI input field.