# US 11,308,105 B2 · System, method, and computer program product for linking datasets

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

- Number: US 11,308,105 B2
- Document ID: US11308105B2
- Status: Granted
- Kind: B2
- Application number: 16/242,241
- Filed: 2019-01-08
- Published: 2020-07-09
- Granted: 2022-04-19
- Earliest claimed: 2019-01-08
- Assignees: Visa International Service Association
- Applicants: Visa International Service Association
- Inventors: Dhirender Singh Rathore; Peiwen Wang; Keyuan Wu; Dipesh Nebhnani
- Web page: https://patentgrep.com/patent/US11308105B2

## CPC

- G06F 16/2468: {Fuzzy queries}
- G06F 16/256: {in federated or virtual databases}
- G06F 16/244: {Grouping and aggregation}
- G06F 16/2455: Query execution
- G06F 16/2456: {Join operations}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Provided is a computer-implemented method for linking datasets using at least two keys, including matching a second key of a first dataset with a second key of a second dataset to identify a plurality of matching records, linking the plurality of matching records from the first dataset and the second dataset, matching the first key of the first dataset with the first key of the second dataset to identify a second plurality of matching records, and linking the second plurality of matching records from the first dataset and the second dataset.

## Claims

### Claim 1

A computer-implemented method for linking datasets using at least two keys, comprising:
generating a basic key for a first dataset based on a plurality of parameters of the first dataset;
generating a basic key for a second dataset based on a plurality of parameters of the second dataset;
generating an advanced key for the first dataset based on the plurality of parameters of the first dataset and at least one additional parameter;
generating an advanced key for the second dataset based on the plurality of parameters of the second dataset and at least one additional parameter;
matching, with at least one processor, the advanced key of the first dataset with the advanced key of the second dataset to identify a plurality of matching records based on a fuzzy matching algorithm;
determining, with at least one processor, that a number of records in the plurality of matching records satisfies a threshold;
in response to determining that the number of records in the plurality of matching records satisfies the threshold, linking, with at least one processor, the plurality of matching records from the first dataset and the second dataset;
matching, with at least one processor, the basic key of the first dataset with the basic key of the second dataset to identify a second plurality of matching records among records in the first dataset and the second dataset other than the plurality of matching records already linked based on the fuzzy matching algorithm;
determining, with at least one processor, that a number of records in the second plurality of matching records satisfies the threshold or a second threshold; and
in response to determining that the number of records in the second plurality of matching records satisfies the threshold or the second threshold, linking, with at least one processor, the second plurality of matching records from the first dataset and the second dataset;
matching, with at least one processor, the advanced key of the first dataset with the advanced key of the second dataset to identify a third plurality of matching records based on the fuzzy matching algorithm and the second threshold;
linking, with at least one processor, the third plurality of matching records from the first dataset and the second dataset; and
generating, with at least one processor, a linked dataset based on the linked matching records.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, further comprising:
matching, with at least one processor, the basic key of the first dataset with the basic key of the second dataset to identify a fourth plurality of matching records based on the fuzzy matching algorithm and the second confidence threshold; and
linking, with at least one processor, the fourth plurality of matching records from the first dataset and the second dataset.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, wherein the same at least one processor performs the generating steps, the matching steps, and the linking steps.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein the advanced key comprises the basic key and at least one additional parameter.

### Claim 5

A system for linking datasets using dual keys, comprising:
at least one data storage device comprising a first dataset and a second dataset; and
at least one processor in communication with the at least one data storage device, the at least one processor programmed or configured to:
generate a basic key for the first dataset based on a plurality of parameters of the first dataset;
generate a basic key for the second dataset based on a plurality of parameters of the second dataset;
generate an advanced key for the first dataset based on the plurality of parameters of the first dataset and at least one additional parameter;
generate an advanced key for the second dataset based on the plurality of parameters of the second dataset and at least one additional parameter;
match the advanced key of the first dataset with the advanced key of the second dataset to identify a plurality of matching records based on a fuzzy matching algorithm;
determine whether a number of records in the plurality of matching records satisfies a threshold;
if the number of records in the plurality of matching records satisfies the threshold, link the plurality of matching records from the first dataset and the second dataset;
match the basic key of the first dataset with the basic key of the second dataset to identify a second plurality of matching records among records in the first dataset and the second dataset other than the plurality of matching records already linked based on a fuzzy matching algorithm;
determine whether a number of records in the second plurality of matching records satisfies the threshold or a second threshold; and
if the number of records in the second plurality of matching records satisfies the threshold or the second threshold, link the second plurality of matching records from the first dataset and the second dataset;
match the advanced key of the first dataset with the advanced key of the second dataset to identify a third plurality of matching records based on the fuzzy matching algorithm and the second threshold;
link the third plurality of matching records from the first dataset and the second dataset; and
generate a linked dataset based on the linked matching records.

### Claim 6 (depends on 5)

The system of claim 5, wherein the at least one processor is programmed or configured to:
match the basic key of the first dataset with the basic key of the second dataset to identify a fourth plurality of matching records based on the fuzzy matching algorithm and the second confidence threshold; and
link the fourth plurality of matching records from the first dataset and the second dataset.

### Claim 7 (depends on 5)

The system of claim 5, wherein the at least one data storage device comprises a first storage device and a second storage device, wherein the first dataset is stored on the first storage device, and wherein the second dataset is stored on the second storage device.

### Claim 8 (depends on 5)

The system of claim 5, wherein the advanced key comprises the basic key and at least one additional parameter.

### Claim 9

A computer program product for linking datasets using dual keys, comprising at least one non-transitory computer-readable medium including program instructions that, when executed by at least one processor, cause the at least one processor to:
generate a basic key for a first dataset based on a plurality of parameters of the first dataset;
generate a basic key for a second dataset based on a plurality of parameters of the second dataset;
generate an advanced key for the first dataset based on the plurality of parameters of the first dataset and at least one additional parameter;
generate an advanced key for the second dataset based on the plurality of parameters of the second dataset and at least one additional parameter;
match the advanced key of the first dataset with the advanced key of the second dataset to identify a plurality of matching records based on a fuzzy matching algorithm;
determine whether a number of records in the plurality of matching records satisfies a threshold;
link the plurality of matching records from the first dataset and the second dataset if the number of records in the plurality of matching records is determined to satisfy the threshold;
match the basic key of the first dataset with the basic key of the second dataset to identify a second plurality of matching records among records in the first dataset and the second dataset other than the plurality of matching records already linked based on a fuzzy matching algorithm;
determine whether a number of records in the second plurality of matching records satisfies the threshold or a second threshold;
link the second plurality of matching records from the first dataset and the second dataset if the number of records in the second plurality of matching records satisfies the threshold or the second threshold;
match the advanced key of the first dataset with the advanced key of the second dataset to identify a third plurality of matching records based on the fuzzy matching algorithm and the second threshold;
link the third plurality of matching records from the first dataset and the second dataset; and
generate a linked dataset based on the linked matching records.

### Claim 10 (depends on 9)

The computer program product of claim 9, wherein the program instructions further cause the at least one processor to:
match the basic key of the first dataset with the basic key of the second dataset to identify a fourth plurality of matching records based on the fuzzy matching algorithm and the second confidence threshold; and
link the fourth plurality of matching records from the first dataset and the second dataset.

### Claim 11 (depends on 9)

The computer program product of claim 9, wherein the advanced key comprises the basic key and at least one additional parameter.
