# US 12,111,838 B2 · Systems and methods for expedited large file processing

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,111,838 B2
- Document ID: US12111838B2
- Status: Granted
- Kind: B2
- Application number: 18/297,957
- Filed: 2023-04-10
- Published: 2023-08-03
- Granted: 2024-10-08
- Earliest claimed: 2017-07-25
- Assignees: Capital One Services, LLC
- Applicants: Capital One Services, LLC
- Inventors: Japan Bhatt
- Web page: https://patentgrep.com/patent/US12111838B2

## CPC

- G06F 16/2458: Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F 16/188: Virtual file systems
- G06F 16/215: Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
- G06F 16/285: {Clustering or classification}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A system includes one or more memory devices storing instructions, and one or more processors configured to execute the instructions to perform steps of a method for processing a large file. The system may receive record data comprising a plurality of records having an identification value in a common field having a data format. The system may determine a plurality of focus values based on the data format and create a plurality of virtual processing units based on the plurality of focus values. Each of the plurality of virtual processing units may process a sub-group of the plurality of records that corresponds to the focus value associated with the respective virtual processing unit.

## Claims

### Claim 1

A system for processing a large file, comprising:
one or more processors; and
a memory in communication with the one or more processors and storing instructions that, when executed by the one or more processors, are configured to cause the system to:
receive record data comprising a plurality of records, each of the plurality of records having a data format comprising a sequence of characters;
determine, based on a comparison of a size of the record data to a predetermined size threshold, an order of magnitude for a seed portion;
determine, based on the data format, a plurality of unique focus values, each of the plurality of unique focus values corresponding to a sub-group of the plurality of records, wherein each of the plurality of unique focus values correspond to a specified portion of the sequence of characters in the data format, a number of the plurality of unique focus values being based on the order of magnitude of the seed portion;
create a plurality of virtual processing units, each associated with a unique one of the plurality of unique focus values; and
process, by each of the plurality of virtual processing units, the corresponding sub-group of the plurality of records that corresponds to the focus value associated with the respective virtual processing unit.

### Claim 2 (depends on 1)

The system of claim 1, wherein the data format comprises a sequence of characters associated with a letter data type such that each character of the sequence of characters comprises either a letter or a null.

### Claim 3 (depends on 1)

The system of claim 1, wherein the sequence of characters has a predetermined maximum length.

### Claim 4 (depends on 1)

The system of claim 1, wherein the specified portion of the sequence of characters of the data format is a one or more letter of a name.

### Claim 5 (depends on 1)

The system of claim 1, wherein the specified portion of the sequence of characters of the data format is two digits of an identification number.

### Claim 6 (depends on 1)

The system of claim 1, wherein each of the virtual processing units comprises a virtual machine or container.

### Claim 7

A system for processing a large file, comprising:
one or more processors; and
a memory in communication with the one or more processors and storing instructions that, when executed by the one or more processors, are configured to cause the system to:
receive record data comprising a plurality of records, each of the plurality of records having a data format comprising a sequence of characters;
determine an order of magnitude for a seed portion based on a size of the record data;
determine, based on the data format, a plurality of unique focus values, wherein each of the plurality of unique focus values correspond to a specified portion of the sequence of characters in the data format, and wherein a number of the plurality of unique focus values is based on the order of magnitude of the seed portion;
create a plurality of virtual processing units, each associated with a unique one of the plurality of unique focus values;
delete one or more virtual processing units of the plurality of virtual processing units that correspond to one or more focus values of the plurality of unique focus values, wherein a remaining plurality of virtual processing units comprises virtual processing units of the plurality of virtual processing units that correspond to focus values of the plurality of unique focus values that correspond to one or more records of the plurality of records;
process, by each of the remaining plurality of virtual processing units, a corresponding sub-group of the plurality of records that corresponds to the focus value associated with the respective virtual processing unit; and
delete, following a final processing by a given virtual processing unit of the remaining plurality of virtual processing units, the given virtual processing unit, wherein final processing comprises a completion of processing of a sub-group of the plurality of records.

### Claim 8 (depends on 7)

The system of claim 7, wherein the instructions that, when executed by the one or more processors, are further configured to cause the system to:
delete each of the remaining plurality of virtual processing units in response to a final respective processing of the virtual processing units.

### Claim 9 (depends on 8)

The system of claim 8, wherein at least two of the remaining plurality of virtual processing units perform a final processing at different times based on a size of the corresponding sub-groups.

### Claim 10 (depends on 7)

The system of claim 7, wherein the deletion of the given virtual processing unit increases processing power available to remaining virtual processing units of the plurality of virtual processing units.

### Claim 11 (depends on 7)

The system of claim 7, wherein the final processing is determined based on an idle time of the given virtual processing unit.

### Claim 12

A system for processing a large file, comprising:
one or more processors; and
a memory in communication with the one or more processors and storing instructions that, when executed by the one or more processors, are configured to cause the system to:
receive record data comprising a plurality of records, each of the plurality of records having a data format comprising a sequence of characters;
determine, based on a comparison of a size of the record data to a predetermined size threshold, an order of magnitude for a seed portion;
determine, based on the data format, a plurality of unique focus values, each of the plurality of unique focus values corresponding to a sub-group of the plurality of records, wherein each of the plurality of unique focus values correspond to a specified portion of the sequence of characters in the data format, a number of the plurality of unique focus values being based on the order of magnitude of the seed portion;
create a plurality of virtual processing units, each associated with a unique one of the plurality of unique focus values;
process, by each of the plurality of virtual processing units, the corresponding sub-group of the plurality of records that corresponds to the focus value associated with the respective virtual processing unit; and
delete, following a final processing by a given virtual processing unit of the plurality of virtual processing units, the given virtual processing unit, wherein final processing comprises a completion of processing of a sub-group of the plurality of records.

### Claim 13 (depends on 12)

The system of claim 12, wherein the instructions that, when executed by the one or more processors, are further configured to cause the system to:
delete each of the plurality of virtual processing units in response to a final respective processing of the virtual processing units.

### Claim 14 (depends on 13)

The system of claim 13, wherein at least two of the plurality of virtual processing units perform a final processing at different times based on a size of the corresponding sub-groups.

### Claim 15 (depends on 12)

The system of claim 12, wherein the deletion of the given virtual processing unit increases processing power available to remaining virtual processing units of the plurality of virtual processing units.

### Claim 16 (depends on 12)

The system of claim 12, wherein the final processing is determined based on an idle time of the given virtual processing unit.

### Claim 17 (depends on 12)

The system of claim 12, wherein the data format comprises a sequence of characters associated with a letter data type such that each character of the sequence of characters comprises either a letter or a null.

### Claim 18 (depends on 12)

The system of claim 12, wherein the sequence of characters has a predetermined maximum length.

### Claim 19 (depends on 12)

The system of claim 12, wherein the specified portion of the sequence of characters of the data format is two digits of an identification number.

### Claim 20 (depends on 12)

The system of claim 12, wherein each of the virtual processing units comprises a virtual machine or container.
