IP Library Granted Patent US 9,690,821
Granted Patent B2
US 9,690,821 · App. 15/154,979 · Granted Jun 27, 2017

Computer data system position-index mapping

Inventors: Charles Wright (Cortlandt Manor, NY); Ryan Caudy (New York, NY); David R. Kent, IV (Colorado Springs, CO); Juan Cristian Ferretti-Smythe (New York, NY); Herve Bronnimann (New York, NY); Radu Teodorescu (New York, NY)
G06F17/30368G06F3/0481G06F3/0482G06F3/0485G06F3/04847G06F3/04895G06F3/0605G06F3/067G06F3/0656G06F8/30G06F8/41G06F8/427G06F8/60G06F11/1451G06F11/1464G06F11/1469G06F12/0261G06F12/084G06F15/17331G06F17/2235G06F17/24G06F17/246G06F17/276G06F17/2715G06F17/30117G06F17/30312G06F17/30315G06F17/30321G06F17/30324G06F17/30327G06F17/30333G06F17/30336G06F17/30339G06F17/30345G06F17/30371G06F17/30374G06F17/30377G06F17/30398G06F17/30424G06F17/30448G06F17/30454G06F17/30477G06F17/30522G06F17/30528G06F17/30554G06F17/30563G06F17/30584G06F17/30598G06F17/30864G06F17/30867G06F17/30887G06F17/30958G06F17/30997H04L12/18H04L51/12H04L61/2069H04L63/101H04L63/102H04L67/1002H04L67/34H04L67/42H04L69/16G06F2201/805G06F2201/84G06F2212/60
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,690,821
App. No.
15/154,979
Granted
Jun 27, 2017
Kind
B2
Abstract

Described are methods, systems and computer readable media for position-index mapping in a computer data system.

Claims (34)

1. A system comprising:

one or more hardware processors;

a computer readable data storage device coupled to the one or more hardware processors, the computer readable data storage device having stored thereon software instructions that, when executed by the one or more hardware processors, cause the one or more hardware processors to perform operations including:

receiving an electronic message associated with a child table, the electronic message including one or more change notifications indicating a change in one or more corresponding parent tables of the child table;

updating an index of the child table based on the received one or more change notifications, where the index of the child table includes a mapping between one or more index values in the child table and corresponding positions in one or more data columns mapped by a columns source map of the child table, where the corresponding positions include positions for which data in the one or more data columns is valid for the child table;

when the child table has one or more dependent tables that depend on data of the child table, generating one or more other electronic messages associated with the one or more dependent tables, the other electronic messages containing change notifications representing updates made to the child table; and

when one or more other electronic messages are generated, providing the one or more other electronic messages to corresponding dependent tables.

2. The system of claim 1 , wherein updating the index includes maintaining strict ordering of the index.

3. The system of claim 1 , wherein the child table has a dependency on data of the one or more parent tables.

4. The system of claim 1 , further comprising another table having a same index as the child table and a column source map different from the column source map of the child table.

5. The system of claim 1 , wherein receiving the electronic message includes receiving an electronic message from a listener associated with the one or more parent tables.

6. The system of claim 1 , wherein providing the one or more other electronic messages to corresponding dependent tables includes causing a listener associated with the one or more dependent tables to be actuated.

7. The system of claim 1 , further comprising another table having a same column source map as the child table and an index different from the index of the child table.

8. A method comprising:

receiving an electronic message associated with a child table, the electronic message including one or more change notifications indicating a change in one or more corresponding parent tables of the child table;

updating an index of the child table based on the received one or more change notifications, where the index of the child table includes a mapping between one or more index values in the child table and corresponding positions in one or more data columns mapped by a columns source map of the child table, where the corresponding positions include positions for which data in the one or more data columns is valid for the child table;

when the child table has one or more dependent tables that depend on data of the child table, generating one or more other electronic messages associated with the one or more dependent tables, the other electronic messages containing change notifications representing updates made to the child table; and

when one or more other electronic messages are generated, providing the one or more other electronic messages to corresponding dependent tables.

9. The method of claim 8 , wherein the change notification includes one or more of an add, a modify, a delete or a reindex message associated with data in the child table that depends on data in one of the parent tables.

10. The method of claim 8 , wherein the child table has a dependency on data of the one or more parent tables.

11. The method of claim 8 , further comprising maintaining a redirection index mapping an outer index to an inner index.

12. The method of claim 8 , wherein receiving the electronic message includes receiving an electronic message from a listener associated with the one or more parent tables.

13. The method of claim 8 , wherein providing the one or more other electronic messages to corresponding dependent tables includes causing a listener associated with the one or more dependent tables to be actuated.

14. The method of claim 8 , further comprising another table having a same column source map as the child table and an index different from the index of the child table.

15. 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 an electronic message associated with a child table, the electronic message including one or more change notifications indicating a change in one or more corresponding parent tables of the child table;

updating an index of the child table based on the received one or more change notifications, where the index of the child table includes a mapping between one or more index values in the child table and corresponding positions in one or more data columns mapped by a columns source map of the child table, where the corresponding positions include positions for which data in the one or more data columns is valid for the child table;

when the child table has one or more dependent tables that depend on data of the child table, generating one or more other electronic messages associated with the one or more dependent tables, the other electronic messages containing change notifications representing updates made to the child table; and

when one or more other electronic messages are generated, providing the one or more other electronic messages to corresponding dependent tables.

16. The nontransitory computer readable medium of claim 15 , wherein the change notification includes one or more of an add, a modify, a delete or a reindex message associated with data in the child table that depends on data in one of the parent tables.

17. The nontransitory computer readable medium of claim 15 , wherein the child table has a dependency on data of the one or more parent tables.

18. The nontransitory computer readable medium of claim 15 , wherein the change notifications in the other electronic messages include one or more of an add, a modify, a delete or a reindex message associated with data in the child table that depends on data in one of the parent tables.

19. The nontransitory computer readable medium of claim 15 , wherein receiving the electronic message includes receiving an electronic message from a listener associated with the one or more parent tables.

20. The nontransitory computer readable medium of claim 15 , further comprising another table having a same column source map as the child table and an index different from the index of the child table.

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 20160335297A1 · Nov 17, 2016