# US 12,008,021 B2 · Data reconciliation system

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

- Number: US 12,008,021 B2
- Document ID: US12008021B2
- Status: Granted
- Kind: B2
- Application number: 18/191,132
- Filed: 2023-03-28
- Published: 2023-10-05
- Granted: 2024-06-11
- Earliest claimed: 2022-04-01
- Assignees: Donyati, LLC
- Applicants: Donyati, LLC
- Inventors: Michael Cronauer; Aparna O. Kallada
- Web page: https://patentgrep.com/patent/US12008021B2

## CPC

- G06F 16/215: Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
- G06F 16/283: {Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP}
- G06F 16/214: {Database migration support}
- G06F 16/26: Visual data mining; Browsing structured data
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method includes receiving a data reconciliation request requesting data reconciliation for a first dataset and a second dataset. The method also includes obtaining the first dataset including one or more dimensions each having a plurality of dimension members and obtaining the second dataset including one or more dimensions each having a plurality of dimension members. For each dimension of the first dataset, the method includes obtaining a bridge member that associates the respective dimension of the first dataset with a dimension of the second dataset. The method includes generating a first and second set of combination dimension members and refreshing the first and second set of combination dimension members using an execution delimiter value. The method includes generating, using the refreshed first and second set of combination dimension members, a third set of combination dimension members to generate a data reconciliation report.

## Claims

### Claim 1

A computer-implemented method when executed by data processing hardware causes the data processing hardware to perform operations comprising:
receiving, from a user device in communication with the data processing hardware, a data reconciliation request requesting data reconciliation for a first dataset and a second dataset;
obtaining the first dataset from a first data source, the first dataset comprising one or more dimensions, each dimension of the one or more dimensions of the first dataset comprising a first plurality of dimension members;
obtaining the second dataset from a second data source, the second dataset comprising one or more dimensions, each dimension of the one or more dimensions of the second dataset comprising a second plurality of dimension members;
for each respective dimension of the first dataset, obtaining a respective bridge member, the respective bridge member associating the respective dimension of the first dataset with a respective dimension of the second dataset;
generating, using each pair of dimension members of the one or more dimensions of the first dataset and the respective bridge members, a first set of combination dimension members;
generating, using each pair of dimension members of the one or more dimensions of the second dataset and the respective bridge members, a second set of combination dimension members;
refreshing the first set of combination dimension members and the second set of combination dimension members based on an execution delimiter value corresponding to a quantity of dimension members refreshed simultaneously;
generating, using the refreshed first set of combination dimension members and the refreshed second set of combination dimension members, a third set of combination dimension members; and
generating, from the third set of combination dimension members, a data reconciliation report.

### Claim 2 (depends on 1)

The method of claim 1, wherein refreshing the first set of combination dimension members and the second set of combination dimension members based on the execution delimiter value further comprises:
refreshing the first set of combination dimension members based on a first execution delimiter value; and
refreshing the second set of combination dimension members based on a second execution delimiter value.

### Claim 3 (depends on 1)

The method of claim 1, wherein refreshing the first set of combination dimension members and the second set of combination dimension members based on the execution delimiter value further comprises:
obtaining an updated dimension member from the first plurality of dimension members of the first dataset from the first data source; and
obtaining an updated dimension member from the second plurality of dimension members of the second dataset from the second data source.

### Claim 4 (depends on 1)

The method of claim 1, wherein generating the third set of combination dimension members using the refreshed first set of combination dimension members and the refreshed second set of combination dimension members comprises suppressing a portion of the combination dimension members.

### Claim 5 (depends on 4)

The method of claim 4, wherein the portion of the combination dimension members comprises combination dimension members associated with a zero or no data.

### Claim 6 (depends on 4)

The method of claim 4, wherein suppressing the portion of the combination dimension members comprises zeroing, based on a variance threshold, a second portion of the combination dimension members.

### Claim 7 (depends on 1)

The method of claim 1, wherein generating the third set of combination dimension members using the refreshed first set of combination dimension members and the refreshed second set of combination dimension members comprises inversing values associated with the refreshed second set of combination dimension members.

### Claim 8 (depends on 1)

The method of claim 1, wherein generating the third set of combination dimension members using the refreshed first set of combination dimension members and the refreshed second set of combination dimension members comprises combining the refreshed first set of combination dimension members and the refreshed second set of dimension members into a linear format.

### Claim 9 (depends on 1)

The method of claim 1, wherein the first dataset and the second dataset each comprise numerical values.

### Claim 10 (depends on 1)

The method of claim 1, wherein the operations further comprise sending the data reconciliation report to the user device, wherein receiving the data reconciliation report causes the user device to display the data reconciliation report via a graphical user interface.

### Claim 11

A system comprising:
data processing hardware; and
memory hardware in communication with the data processing hardware, the memory hardware storing instructions that when executed on the data processing hardware cause the data processing hardware to perform operations comprising:
receiving, from a user device in communication with the data processing hardware, a data reconciliation request requesting data reconciliation for a first dataset and a second dataset;
obtaining the first dataset from a first data source, the first dataset comprising one or more dimensions, each dimension of the one or more dimensions of the first dataset comprising a first plurality of dimension members;
obtaining the second dataset from a second data source, the second dataset comprising one or more dimensions, each dimension of the one or more dimensions of the second dataset comprising a second plurality of dimension members;
for each respective dimension of the first dataset, obtaining a respective bridge member, the respective bridge member associating the respective dimension of the first dataset with a respective dimension of the second dataset;
generating, using each pair of dimension members of the one or more dimensions of the first dataset and the respective bridge members, a first set of combination dimension members;
generating, using each pair of dimension members of the one or more dimensions of the second dataset and the respective bridge members, a second set of combination dimension members;
refreshing the first set of combination dimension members and the second set of combination dimension members based on an execution delimiter value corresponding to a quantity of dimension members refreshed simultaneously;
generating, using the refreshed first set of combination dimension members and the refreshed second set of combination dimension members, a third set of combination dimension members; and
generating, from the third set of combination dimension members, a data reconciliation report.

### Claim 12 (depends on 11)

The system of claim 11, wherein refreshing the first set of combination dimension members and the second set of combination dimension members based on the execution delimiter value further comprises:
refreshing the first set of combination dimension members based on a first execution delimiter value; and
refreshing the second set of combination dimension members based on a second execution delimiter value.

### Claim 13 (depends on 11)

The system of claim 11, wherein refreshing the first set of combination dimension members and the second set of combination dimension members based on the execution delimiter value further comprises:
obtaining an updated dimension member from the first plurality of dimension members of the first dataset from the first data source; and
obtaining an updated dimension member from the second plurality of dimension members of the second dataset from the second data source.

### Claim 14 (depends on 11)

The system of claim 11, wherein generating the third set of combination dimension members using the refreshed first set of combination dimension members and the refreshed second set of combination dimension members comprises suppressing a portion of the combination dimension members.

### Claim 15 (depends on 14)

The system of claim 14, wherein the portion of the combination dimension members comprises combination dimension members associated with a zero or no data.

### Claim 16 (depends on 14)

The system of claim 14, wherein suppressing the portion of the combination dimension members comprises zeroing, based on a variance threshold, a second portion of the combination dimension members.

### Claim 17 (depends on 11)

The system of claim 11, wherein generating the third set of combination dimension members using the refreshed first set of combination dimension members and the refreshed second set of combination dimension members comprises inversing values associated with the refreshed second set of combination dimension members.

### Claim 18 (depends on 11)

The system of claim 11, wherein generating the third set of combination dimension members using the refreshed first set of combination dimension members and the refreshed second set of combination dimension members comprises combining the refreshed first set of combination dimension members and the refreshed second set of dimension members into a linear format.

### Claim 19 (depends on 11)

The system of claim 11, wherein the first dataset and the second dataset each comprise numerical values.

### Claim 20 (depends on 11)

The system of claim 11, wherein the operations further comprise sending the data reconciliation report to the user device, wherein receiving the data reconciliation report causes the user device to display the data reconciliation report via a graphical user interface.
