IP Library Granted Patent US 8,904,381
Granted Patent B2
US 8,904,381 · App. 12/358,995 · Granted Dec 2, 2014

User defined data partitioning (UDP)—grouping of data based on computation model

Inventors: Qiming Chen (Cupertino, CA); Meichun Hsu (Los Altos Hills, CA)
Assignee: Hewlett-Packard Development Company, L.P.
G06F17/30339G06F9/5066G06F17/30584Y10S707/968
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 8,904,381
App. No.
12/358,995
Filed
Jan 23, 2009
Granted
Dec 2, 2014
Kind
B2
Art Unit
2126
USPC
718/1
Abstract

Methods, systems, and computer program products are provided for generating application-aware data partitioning to support parallel computing. A label for a user defined data partitioning (UDP) key is generated by a labeling process to configure data partitions of original data. The UDP is labeled by the labeling process to include at least one key property excluded from the original data. The data partitions are evenly distributed to co-locate and balance the data partitions and corresponding computations performed by computational servers. A data record of the data partitions is retrieved by performing an all-node parallel search of the computational servers using the UDP key.

Claims (16)

1. A computer system for data partitioning, the computer system comprising:

a memory; and

a computer processor to:

generate a user defined data partitioning key to configure data partitions of original data, the user defined data partitioning key generated based upon a computational model applied to the original data, the user defined data partitioning key to include at least one key property of the computational model, the at least one key property is excluded from the original data, and the user defined data partitioning key is generated or learnt from the original data based on an application; and

allocate the data partitions to co-locate the data partitions and corresponding processing of computations associated with the computational model.

2. The system of claim 1 , the computer processor to distribute the data partitions in accordance with the computational model.

3. The system of claim 1 , the computer processor to compute the data partitions in accordance with a data dependency graph based parallel processing.

4. The system of claim 1 , the computer processor to retrieve a data record of the data partitions by performing an all-node parallel search of computational servers performing the computations.

5. The system of claim 1 , the computer processor to retrieve a data record of the data partitions by generating partition indices to perform a query as a two-step search.

6. The system of claim 1 , the computer processor to communicate information about the data partitions to each one of a cluster of computational servers performing the computations.

7. The system of claim 1 , the computer processor to balance a load level of computational servers performing the computations by evenly distributing the data partitions.

8. The system of claim 1 , the computer processor to apply a computation function to data objects included in the data partitions.

9. The system of claim 1 , the computer processor to execute an algorithm to generate a label used as the user defined partition key, the algorithm being configured in accordance with the computation model.

10. The system of claim 1 , the computer processor to mark rows of a table T for representing membership in a group, the group being accessed by the user defined partition key, the table T including at least a portion of the original data.

11. The system of claim 1 , the computer processor to map from a feature space X to a label space Y, the feature space X comprising vectors x 1 to x n , n being an integer, the label space Y comprising vectors y 1 to y m , m being an integer, y i being a vector in the label space X.

12. The system of claim 11 , the computer processor to include a probability measure in the map.

Assignments (9)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2026
From: MICRO FOCUS LLC
To: ROCKET SOFTWARE, INC.
Reel/Frame 075795/0114 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0577 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC)
Reel/Frame 063560/0001 →
CHANGE OF NAME Recorded Aug 8, 2019
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 050004/0001 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ARCSIGHT, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0577 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENTIT SOFTWARE LLC
Reel/Frame 042746/0130 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2009
From: CHEN, QIMING; HSU, MEICHUN
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 022159/0695 →
Continuity (1)
Related Publication 20100192148A1 · Jul 29, 2010