IP Library Granted Patent US 10,984,359
Granted Patent B2
US 10,984,359 · App. 15/190,178 · Granted Apr 20, 2021

Combining batch and queueable technologies in a salesforce platform for large volume parallel processing

Inventor: Lee Francis Storey (Eggborough, GB)
Assignee: FinancialForce.com, Inc.
G06Q10/06316H04L67/10
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,984,359
App. No.
15/190,178
Granted
Apr 20, 2021
Kind
B2
Abstract

Disclosed embodiments include a method for combining a BATCH application programming interface (API) and a QUEUEABLE API on a SALESFORCE platform to process records. The method can include accessing a programming environment associated with an add-on application for a SALESFORCE platform, obtaining records via the add-on application to be processed on the SALESFORCE platform in accordance with a job type, calling a BATCH API to process the records by batching the records to create job records, and calling a QUEUEABLE API to process the job records in QUEUEABLES including parallel QUEUEABLES such that at least some job records included in the parallel QUEUEABLES are processed in parallel in accordance with the job type.

Claims (19)

1. A method for achieving improved throughput and finer control in processing a plurality of records by asynchronously combining batching and a plurality of queueables performed in accordance with a cloud-based computing architecture, the method comprising:

accessing a programming environment associated with an application for an application development platform of the cloud-based computing architecture;

obtaining the plurality of records via the application to be processed on the application development platform in accordance with a job type;

executing a first asynchronous process by calling a batching application programing interface (API) on the application development platform for limited asynchronous batching of the plurality of records to create a plurality of job records by generating a job table to process the plurality of records, the job table being populated with a record entry and unique identifier for each of the plurality of records;

calling a queueing application programing interface (API) to asynchronously process the plurality of job records from the job table in the plurality of queueables by determining a scope size for each of the plurality of queueables, the scope size including a number of the plurality of job records, and allocating the job records to the plurality of queueables in accordance with the scope size for each of the plurality of queueables, wherein the plurality of queueables includes a plurality of parallel queueables such that at least some job records included in the plurality of parallel queueables are processed in parallel in accordance with the job type; and

increasing a number of the plurality of queueables and executing a second asynchronous process by chaining at least one of the plurality of queueables to another queueable, the at least one queueable being initiated to run in parallel processing while the another queueable is running, wherein an identifier associated with the at least one queueable indicates a last time a job record was modified and is written in one or more of the plurality of job records, and wherein another identifier associated with the another queuable determines how the job record will be processed and is written to another one or more of the plurality of job records.

2. The method of claim 1 , wherein the plurality of queueables are arranged in a chain such that a first plurality of the plurality of queueables start processing the one or more job records in response to a second plurality of the plurality of queueables completing processing of the other one or more job records.

3. The method of claim 2 , wherein the first plurality of the plurality of queueables comprises the plurality of parallel queueables and the second plurality comprises another plurality of parallel queueables such that at least some records included in the second plurality of the plurality of queueables are processed in parallel.

4. The method of claim 1 , wherein the unique identifier is a record identifier that uniquely identifies the job record from other job records referred to in the job table.

5. The method of claim 4 , wherein each record entry comprises values for parameters including any of:

a call identifier representing a call that initiated the batch;

a queueable identifier indicating a queueable of the plurality of queueables that was given the job record to process;

time information indicating the last time the job record was modified;

a job type identifier indicating how the job record should be processed; and

status information indicating a processing status of the job record.

6. The method of claim 1 , wherein each record entry comprises status information including a status of a job record, the method further comprising:

polling the job table for the status in a record entry of each job record;

initiating reprocessing of the job record in accordance with the status of the job record; and

reprocessing any job record in accordance with the job type.

Assignments (12)
CHANGE OF ADDRESS Recorded Sep 12, 2024
From: CERTINIA INC.
To: CERTINIA INC.
Reel/Frame 068948/0361 →
SECURITY INTEREST Recorded Aug 7, 2023
From: CERTINIA INC.
To: BLUE OWL CREDIT INCOME CORP., AS COLLATERAL AGENT
Reel/Frame 064510/0495 →
RELEASE OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Aug 4, 2023
From: KEYBANK NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: CERTINIA, INC.
Reel/Frame 064502/0117 →
CHANGE OF NAME Recorded Jun 20, 2023
From: FINANCIALFORCE.COM, INC.
To: CERTINIA INC.
Reel/Frame 064042/0206 →
RELEASE OF SECURITY INTEREST Recorded Mar 24, 2022
From: OBSIDIAN AGENCY SERVICES, INC.
To: FINANCIALFORCE.COM, INC.
Reel/Frame 059389/0501 →
SECURITY INTEREST Recorded Feb 21, 2022
From: FINANCIALFORCE.COM, INC.
To: KEYBANK NATIONAL ASSOCIATION
Reel/Frame 059204/0323 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUS APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 048416 FRAME: 0266. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 23, 2019
From: FINANCIALFORCE.COM, INC.
To: OBSIDIAN AGENCY SERVICES, INC.
Reel/Frame 050836/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUS APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 049535 FRAME: 0815. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Oct 23, 2019
From: TRIPLEPOINT VENTURE GROWTH BDC CORP.
To: FINANCIALFORCE.COM, INC.
Reel/Frame 050835/0594 →
RELEASE OF SECURITY INTEREST Recorded Feb 22, 2019
From: TRIPLEPOINT VENTURE GROWTH BDC CORP.
To: FINANCIALFORCE.COM, INC.
Reel/Frame 049535/0815 →
SECURITY INTEREST Recorded Feb 22, 2019
From: FINANCIALFORCE.COM, INC.
To: OBSIDIAN AGENCY SERVICES, INC.
Reel/Frame 048416/0266 →
SECURITY INTEREST Recorded Oct 26, 2016
From: FINANCIALFORCE.COM, INC.
To: TRIPLEPOINT VENTURE GROWTH BDC CORP.
Reel/Frame 040142/0224 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 11, 2016
From: STOREY, LEE FRANCIS
To: FINANCIALFORCE.COM, INC.
Reel/Frame 039405/0392 →
Continuity (1)
Related Publication 20170372246A1 · Dec 28, 2017