IP Library Granted Patent US 9,986,018
Granted Patent B2
US 9,986,018 · App. 14/151,277 · Granted May 29, 2018

Method and system for a scheduled map executor

Inventors: Ajitsen Surendran (Karnataka, IN); Satyadeep Sridharan Musuvathy (Karnataka, IN)
Assignee: EXCALIBUR IP, LLC
H04L67/10G06F9/5066H04L67/32
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,986,018
App. No.
14/151,277
Granted
May 29, 2018
Kind
B2
Abstract

Method, system, and programs for data processing. In one example, a record is received. The record is separated into multiple partitions. Each partition is submitted to an iterative pipeline, wherein the iterative pipeline comprises two or more processing stages that are run in parallel and one of the multiple partitions passes through one of the two or more processing stages in one iteration. The multiple partitions are passed through two or more processing stages. The partitions that have passed through each of the two or more processing stages are merged.

Claims (49)

1. A method, implemented on at least one machine each of which has at least one processor, storage, and a communication platform connected to a network for processing data, the method comprising:

generating a queue of one or more records for processing;

setting a rate at which the one or more records are requested for processing, wherein the rate is determined based on at least one of a network capacity and an availability of processing services;

retrieving the one or more records listed on the queue;

submitting the one or more records to a proxy record reader;

removing the one or more records submitted to the proxy record reader from the queue; and

submitting the one or more records to an actual record reader.

2. The method of claim 1 , further comprising:

polling the queue for a control signal, wherein the control signal is further used to set the rate at which the one or more records are requested for processing.

3. The method of claim 1 , wherein the one or more record are separated into multiple partitions based on a capacity of a network application programming interface.

4. The method of claim 1 , wherein the one or more records are separated into multiple partitions based on a capacity of one or more cloud services.

5. The method of claim 1 , wherein a size of a record of the one or more records determines a number of map tasks to be performed on the one or more records.

6. The method of claim 1 , wherein the rate is further determined based on a size of each record of the one or more records.

7. A system comprising a plurality of nodes, each of which has at least one processor configured for:

generating a queue of one or more records for processing;

setting a rate at which the one or more records are requested for processing, wherein the rate is determined based on at least one of a network capacity and an availability of processing services;

retrieving the one or more records listed on the queue;

submitting the one or more records to a proxy record reader;

removing the one or more records submitted to the proxy record reader from the queue; and

submitting the one or more records to an actual record reader.

8. The system of claim 7 , wherein each node is further configured for:

polling the queue for a control signal, wherein the control signal is further used to set the rate at which the one or more records are requested for processing.

9. The system of claim 7 , wherein the one or more records are separated into multiple partitions based on a capacity of a network application programming interface.

10. The system of claim 7 , wherein a record of the one or more records is separated into multiple partitions based on a capacity of one or more cloud services.

11. The system of claim 7 , wherein a size of the record determines a number of map tasks to be performed on the one or more records.

12. The system of claim 7 , wherein the rate is further determined based on a size of each record of the one or more records.

13. A non-transitory machine-readable medium having information recorded thereon for processing data, wherein the information, when read by the machine, causes the machine to perform the following:

generating a queue of one or more records for processing;

setting a rate at which the one or more records are requested for processing, wherein the rate is determined based on at least one of a network capacity and an availability of processing services;

retrieving the one or more records listed on the queue;

submitting the one or more records to a proxy record reader;

removing the one or more records submitted to the proxy record reader from the queue; and

submitting the one or more records to an actual record reader.

14. The medium of claim 13 , further comprising:

polling the queue for a control signal, wherein the control signal is further used to set the rate at which the one or more records are requested for processing.

15. The medium of claim 13 , wherein the one or more records are separated into multiple partitions based on a capacity of a network application programming interface.

16. The medium of claim 13 , wherein a record of the one or more records is separated into multiple partitions based on a capacity of one or more cloud services.

17. The medium of claim 13 , wherein a size of a record of the one or more records determines a number of map tasks to be performed on the one or more records.

18. The medium of claim 13 , wherein the rate is further determined based on a size of each record of the one or more records.

19. The method of claim 1 , further comprising:

receiving at least a first input file;

separating the first input file into partitions;

determining an input file size of the first input file; and

determining a number of map tasks to be performed based on the input file size, wherein the rate is further determined based on the number.

20. The system of claim 7 , wherein each of the at least one processor is further configured for:

receiving at least a first input file;

separating the first input file into partitions;

determining an input file size of the first input file; and

determining a number of map tasks to be performed based on the input file size, wherein the rate is further determined based on the number.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE ASSIGNOR NAME PREVIOUSLY RECORDED AT REEL: 052853 FRAME: 0153. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 29, 2021
From: R2 SOLUTIONS LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 056832/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED ON REEL 053654 FRAME 0254. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST GRANTED PURSUANT TO THE PATENT SECURITY AGREEMENT PREVIOUSLY RECORDED. Recorded Dec 30, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: R2 SOLUTIONS LLC
Reel/Frame 054981/0377 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jul 8, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
Reel/Frame 053654/0254 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2020
From: EXCALIBUR IP, LLC
To: R2 SOLUTIONS LLC
Reel/Frame 053459/0059 →
PATENT SECURITY AGREEMENT Recorded Jun 5, 2020
From: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MERTON ACQUISITION HOLDCO LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 052853/0153 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038950/0592 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2016
From: EXCALIBUR IP, LLC
To: YAHOO! INC.
Reel/Frame 038951/0295 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038383/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2014
From: SURENDRAN, AJITSEN; MUSUVATHY, SATYADEEP SRIDHARAN
To: YAHOO! INC.
Reel/Frame 031930/0235 →
Continuity (1)
Related Publication 20150195344A1 · Jul 9, 2015