IP Library Granted Patent US 10,353,893
Granted Patent B2
US 10,353,893 · App. 15/154,974 · Granted Jul 16, 2019

Data partitioning and ordering

Inventors: Radu Teodorescu (New York, NY); Ryan Caudy (New York, NY); David R. Kent, IV (Colorado Springs, CO); Charles Wright (Cortlandt Manor, NY)
Assignee: Deephaven Data Labs LLC
G06F16/2453G06F3/0481G06F3/0482G06F3/0483G06F3/0485G06F3/04847G06F3/04895G06F3/0605G06F3/067G06F3/0656G06F8/30G06F8/41G06F8/427G06F8/60G06F11/1451G06F11/1464G06F11/1469G06F12/0261G06F12/084G06F12/1483G06F15/17331G06F16/113G06F16/144G06F16/162G06F16/215G06F16/22G06F16/221G06F16/2228G06F16/2237G06F16/2246G06F16/2255G06F16/2264G06F16/2272G06F16/2282G06F16/23G06F16/2308G06F16/2358G06F16/2365G06F16/2372G06F16/2379G06F16/242G06F16/245G06F16/248G06F16/2428G06F16/2455G06F16/2456G06F16/2457G06F16/24534G06F16/24535G06F16/24537G06F16/24539G06F16/24553G06F16/24575G06F16/254G06F16/27G06F16/278G06F16/285G06F16/907G06F16/9024G06F16/951G06F16/9535G06F16/9566G06F16/9574G06F17/2235G06F17/24G06F17/245G06F17/246G06F17/276G06F17/2715G06F21/00G06F21/6209H04L12/18H04L51/046H04L51/12H04L61/2069H04L63/101H04L63/102H04L67/1002H04L67/141H04L67/28H04L67/2833H04L67/2842H04L67/34H04L67/42H04L69/16G06F16/2291G06F17/40G06F2201/805G06F2201/84G06F2212/1052G06F2212/154G06F2212/163G06F2212/60H04L67/2847
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 10,353,893
App. No.
15/154,974
Granted
Jul 16, 2019
Kind
B2
Abstract

Described are methods, systems and computer readable media for data partitioning and ordering.

Claims (45)

1. A method for storing ordered data in a computer data system, the method comprising:

receiving an electronic message containing one or more data items;

storing the received data items to a first set of one or more first partitions as first stored data in a first electronic data storage device, wherein each of the first set of partitions is not grouped;

remapping the data items stored in the first set of partitions to a second set of one or more second partitions in a second electronic data storage device, each of the second partitions having a respective grouping, wherein each second partition of the second set of partitions corresponds to a directory in a file system, and wherein location keys and retrieval instructions for storage locations of interest for potential query result data are discovered by traversing a directory structure, wherein the location keys each include a partition identifier having a storage unit identifier and a partitioning column value;

storing the remapped first stored data as second stored data in the second set of partitions in the second electronic data storage device according to the respective grouping;

sorting each second partition of the second set of partitions according to a strict ordering to generate ordered second partitions;

organizing a partition of the ordered second partitions into two or more groups having one or more grouping levels based on one or more column values;

storing the ordered second partitions in the second electronic data storage device so as to maintain the strict ordering;

permitting the computer data system to defer accessing data by narrowing from a full set of locations to a sub-set of locations according to a query, and narrowing a set of rows to a sub-set of rows to evaluate prior to handling data; and

executing query operations against the sub-set of locations on a per-partition basis based on the sub-set of locations and the sub-set of rows.

2. The method of claim 1 ,

wherein the organizing includes generating grouping metadata associated with the respective ordered second partition.

3. The method of claim 1 , wherein the first electronic data storage device and the second electronic data storage device are different from each other.

4. The method of claim 1 , wherein the second partitions are arranged according to an overall schema and the ordered partitions are arranged according to a partition schema associated with each respective ordered partition.

5. A method comprising:

receiving an electronic message containing one or more data items;

storing the received data items to a first set of one or more first partitions as first stored data in a first electronic data storage device, wherein each of the first set of partitions is not grouped;

remapping the data items stored in the first set of partitions to a second set of one or more second partitions in a second electronic data storage device, each of the second partitions having a respective grouping, wherein each second partition of the second set of partitions corresponds to a directory in a file system, and wherein location keys and retrieval instructions for storage locations of interest for potential query result data are discovered by traversing a directory structure, wherein the location keys each include a partition identifier having a storage unit identifier and a partitioning column value;

storing the remapped first stored data as second stored data in the second set of partitions in the second electronic data storage device according to the respective grouping;

sorting each second partition of the second set of partitions according to a strict ordering to generate ordered second partitions;

storing the ordered second partitions in the second electronic data storage device so as to maintain the strict ordering;

permitting a computer data system to defer accessing data by narrowing from a full set of locations to a sub-set of locations according to a query, and narrowing a set of rows to a sub-set of rows to evaluate prior to handling data; and

executing query operations against the sub-set of locations on a per-partition basis based on the sub-set of locations and the sub-set of rows.

6. The method of claim 5 , further comprising:

organizing a partition of the ordered second partitions into two or more groups having one or more grouping levels.

7. The method of claim 6 , wherein the organizing includes generating grouping metadata associated with the respective ordered second partition.

8. The method of claim 5 , wherein the first electronic data storage device and the second electronic data storage device are different from each other.

9. The method of claim 5 , wherein the second partitions are arranged according to an overall schema and the ordered partitions are arranged according to a partition schema associated with each respective ordered partition.

10. The method of claim 5 , further comprising:

organizing each partition of the ordered second partitions into two or more groups having one or more grouping levels based on one or more column values.

11. The method of claim 10 , wherein the organizing includes generating grouping metadata associated with the respective ordered second partition.

12. A method comprising:

receiving an electronic message containing one or more data items;

storing the received data items to a first set of one or more first partitions as first stored data in a first electronic data storage device;

remapping the data items stored in the first set of partitions to a second set of one or more second partitions in a second electronic data storage device, each of the second partitions having a respective grouping, wherein each second partition of the second set of partitions corresponds to a directory in a file system, and wherein location keys and retrieval instructions for storage locations of interest for potential query result data are discovered by traversing a directory structure, wherein the location keys each include a partition identifier having a storage unit identifier and a partitioning column value;

storing the remapped first stored data as second stored data in the second set of partitions in the second electronic data storage device according to the respective grouping;

sorting each second partition of the second set of partitions according to a strict ordering to generate ordered second partitions;

organizing a partition of the ordered second partitions into two or more groups having one or more grouping levels based on one or more column values;

storing the ordered second partitions in the second electronic data storage device so as to maintain the strict ordering;

permitting a computer data system to defer accessing data by narrowing from a full set of locations to a sub-set of locations according to a query, and narrowing a set of rows to a sub-set of rows to evaluate prior to handling data; and

executing query operations against the sub-set of locations on a per-partition basis based on the sub-set of locations and the sub-set of rows.

13. The method of claim 12 , wherein the organizing includes generating grouping metadata associated with the respective ordered second partition.

14. The method of claim 12 , wherein the first electronic data storage device and the second electronic data storage device are different from each other.

15. The method of claim 12 , wherein the second partitions are arranged according to an overall schema and the ordered partitions are arranged according to a partition schema associated with each respective ordered partition.

16. The method of claim 12 , wherein at least one of the first set of partitions is not grouped.

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 20160335304A1 · Nov 17, 2016
Cited By (1)
US 12,461,909