IP Library Granted Patent US 9,613,109
Granted Patent B2
US 9,613,109 · App. 15/154,991 · Granted Apr 4, 2017

Query task processing based on memory allocation and performance criteria

Inventors: Charles Wright (Cortlandt Manor, NY); Ryan Caudy (New York, NY); David R. Kent, IV (Colorado Springs, CO); Mark Zeldis (Randolph, NJ); Radu Teodorescu (New York, NY)
G06F17/30554G06F15/17331G06F17/30321
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 9,613,109
App. No.
15/154,991
Granted
Apr 4, 2017
Kind
B2
Abstract

Described are methods, systems and computer readable media for query task operations based on memory allocation and performance criteria.

Claims (92)

1. A system for maximizing memory and processing efficiencies in a computer system, 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:

sending a digital request from a client computer to a remote query processor on a query server computer;

creating and storing, in a computer storage, data in a plurality of column sources;

creating and storing in a computer memory a first table object index mapping data in the plurality of column sources to a first table object, the computer memory having faster access time than the computer storage;

at the remote query processor, providing operations including:

a select query operation, the select query operation comprising:

receiving a select query task to assign to a second table object a subset of rows from one or more of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the second table object;

creating and storing in the computer memory, a copy of the subset of rows assigned to the second table object;

creating and storing in the computer memory separate from the computer storage a second table object index mapping the copy of the subset of rows assigned to the second table object;

storing a formulaic column in the computer storage including storing a result set from executing a formula in the form of a subset of rows assigned to the second table object, thereby eliminating the use of repeat processing time for re-executing the formula and providing faster access to the subset of rows assigned to the second table object;

a view query operation, the view query operation comprising:

receiving a view query task to assign to a third table object a subset of rows from one or more of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the third table object;

accessing in the computer memory the first table object index to the subset of rows assigned to the third table object;

storing a formulaic column in the computer storage including storing a formula configured to generate a result set, thereby reducing the use of computer memory;

an update query operation, the update query operation comprising:

receiving an update query task to assign to a fourth table object a subset of rows from all of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the fourth table object;

accessing in the computer memory separate from the computer storage the first table object index to the subset of rows assigned to the fourth table object;

storing a formulaic column in the computer storage including storing a result set from executing a formula in the form of a map, thereby reducing the use of repeat processing time for re-executing the formula;

an updateview query operation, the updateview query operation comprising:

receiving an updateview query task to assign to a fifth table object a subset of rows from all of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the fifth table object;

accessing in the computer memory separate from the computer storage the first table object index to the subset of rows assigned to the fifth table object;

storing a formulaic column in the computer storage including storing a formula configured to generate a result set, thereby reducing the use of computer memory.

2. The system of claim 1 , wherein the first table object index is arranged according to a strict ordering.

3. A system for appending columns in a query, 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:

sending a digital request from a client computer to a remote query processor on a query server computer;

creating and storing, in a computer storage, data in a plurality of column sources;

creating and storing in a computer memory a first table object index mapping data in the plurality of column sources to a first table object, the computer memory having faster access time than the computer storage;

at the remote query processor, providing operations including:

an update query operation, the update query operation comprising:

receiving an update query task to assign to a second table object a subset of rows from all of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the second table object;

accessing in the computer memory separate from the computer storage the first table object index to the subset of rows assigned to the second table object;

storing a formulaic column in the computer storage including storing a result set from executing a formula in the form of a map, thereby reducing the use of repeat processing time for re-executing the formula;

an updateview query operation, the updateview query operation comprising:

receiving an updateview query task to assign to a third table object a subset of rows from all of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the third table object;

accessing in the computer memory separate from the computer storage the first table object index to the subset of rows assigned to the third table object;

storing a formulaic column in the computer storage including storing a formula configured to generate a result set, thereby reducing the use of computer memory.

4. The system of claim 3 , wherein the first table object index is arranged according to a strict ordering.

5. A system for processing columns in a query, 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:

sending a digital request from a client computer to a remote query processor on a query server computer;

creating and storing in a computer storage, data in a plurality of column sources;

creating and storing in a computer memory a first table object index mapping data in the plurality of column sources to a first table object, the computer memory having faster access time than the computer storage;

at the remote query processor, providing operations including:

a select query operation, the select query operation comprising:

receiving a select query task to assign to a second table object a subset of rows from one or more of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the second table object;

creating and storing in the computer memory, a copy of the subset of rows assigned to the second table object;

creating and storing in the computer memory separate from the computer storage a second table object index mapping the copy of the subset of rows assigned to the second table object;

storing a formulaic column in the computer storage including storing a result set from executing a formula in the form of a subset of rows assigned to the second table object, thereby eliminating the use of repeat processing time for re-executing the formula and providing faster access to the subset of rows assigned to the second table object;

a view query operation, the view query operation comprising:

receiving a view query task to assign to a third table object a subset of rows from one or more of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the third table object;

accessing in the computer memory the first table object index to the subset of rows assigned to the third table object;

storing a formulaic column in the computer storage including storing a formula configured to generate result set, thereby reducing the use of computer memory.

6. The system of claim 5 , wherein the first table object index is arranged according to a strict ordering.

7. A method for maximizing memory and processing efficiencies in a computer system, the method comprising:

creating and storing in a computer storage data in a plurality of column sources;

creating and storing in a computer memory a first table object index mapping data in the plurality of column sources to a first table object, the computer memory having faster access time than the computer storage;

providing operations including:

a select query operation, the select query operation comprising:

receiving a select query task to assign to a second table object a subset of rows from one or more of the plurality of column sources from the first table object;

creating and storing in the high-speed computer memory separate from the computer storage, the second table object;

creating and storing in the computer memory, a copy of the subset of rows assigned to the second table object;

creating and storing in the computer memory separate from the computer storage a second table object index mapping the copy of the subset of rows assigned to the second table object;

storing a formulaic column in the computer storage including storing a result set from executing a formula in the form of a subset of rows assigned to the second table object, thereby eliminating the use of repeat processing time for re-executing the formula and providing faster access to the subset of rows assigned to the second table object;

a view query operation, the view query operation comprising:

receiving a view query task to assign to a third table object a subset of rows from one or more of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the third table object;

accessing in the high-speed computer memory separate from the computer storage the first table object index to the subset of rows assigned to the third table object;

storing a formulaic column in the computer storage including storing a formula configured to generate a result set, thereby reducing the use of computer memory;

an update query operation, the update query operation comprising:

receiving an update query task to assign to a fourth table object a subset of rows from all of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the fourth table object;

accessing in the computer memory separate from the computer storage the first table object index to the subset of rows assigned to the fourth table object;

storing a formulaic column in the computer storage including storing a result set from executing a formula in the form of a map, thereby reducing the use of repeat processing time for re-executing the formula;

an updateview query operation, the updateview query operation comprising:

receiving an updateview query task to assign to a fifth table object a subset of rows from all of the plurality of column sources from the first table object;

creating and storing in the computer memory separate from the computer storage, the fifth table object;

accessing in the computer memory separate from the computer storage the first table object index to the subset of rows assigned to the fifth table object;

storing a formulaic column in computer storage including storing a formula configured to generate a result set, thereby reducing the use of computer memory.

8. The method of claim 7 , wherein the first table object index is arranged according to a strict ordering.

Assignments (3)
CHANGE OF NAME Recorded Sep 5, 2018
From: ILLUMON LLC
To: DEEPHAVEN DATA LABS LLC
Reel/Frame 047017/0500 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2017
From: RIES, BRIAN; FERRETTI-SMYTHE, JUAN CRISTIAN; WRIGHT, CHARLES; VYDROV, OLEG; CAUDY, RYAN; KENT, DAVID R., IV; DORFMAN, NATHANIEL J.; TEODORESCU, RADU; ZELDIS, MARK; BRONNIMANN, HERVE; BASRALIAN, RAFFI
To: ILLUMON LLC
Reel/Frame 044557/0029 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2017
From: WALLEYE SOFTWARE, LLC
To: ILLUMON LLC
Reel/Frame 043722/0092 →
Continuity (2)
Provisional Application 62161813 · May 14, 2015
Related Publication 20160335329A1 · Nov 17, 2016