IP Library Granted Patent US 11,397,723
Granted Patent B2
US 11,397,723 · App. 16/242,393 · Granted Jul 26, 2022

Data integrity checks

Inventor: Gintautas Miliauskas (London, GB)
Assignee: Palantir Technologies Inc.
G06F16/2365G06F16/248G06F16/955
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 11,397,723
App. No.
16/242,393
Granted
Jul 26, 2022
Kind
B2
Abstract

Aspects of the present disclosure relate to performing agnostic data integrity checks on source data, and based on the data integrity checks, generating a human-readable report that may be useable to identify specific errors or anomalies within the source data. Example embodiments involve systems and methods for performing the data integrity checks and generating the human-readable reports. For example, the method may include operations to ingest data from a source database through a data pipeline and into a local database, access the data from the data pipeline, determine a data type of the data, determine subtypes of data elements which make up the data, determine a count of each subtype, and generate a human-readable report, to be displayed at a client device.

Claims (52)

1. A method comprising:

receiving, at a local database, data from a source database among a plurality of databases;

determining the source database of the data from among the plurality of databases based on an attribute of the data;

accessing historical data associated with the source database of the data, the historical data comprising a set of expected values that correspond with the source database of the data;

determining a threshold value based on the set of expected values of the historical data associated with the source database;

performing a comparison of the data from the source database with the threshold value;

detecting an erroneous value among the data from the source database based on the comparison of the data from the source database with the threshold value;

causing display of a notification that indicates the erroneous value at a client device in response to the detecting the erroneous value; and

generating a report that comprises a display of at least a portion of the data from the source database.

2. The method of claim 1 , wherein the display of the data from the source database includes a presentation of the erroneous value, wherein the presentation of the erroneous value is visually distinguished from the display of the data.

3. The method of claim 1 , wherein the data from the source database comprises a data type, and the accessing the set of expected values includes:

accessing the set of expected values based on the source database and the data type of the data.

4. The method of claim 1 , wherein the set of expected values include a set of threshold values, and the detecting the erroneous value among the data from the source database includes:

detecting a value from the data received from the source database that transgresses one or more threshold values from among the set of threshold value.

5. The method of claim 1 , wherein the accessing the set of expected values based on the source database includes:

receiving an input that assigns the set of expected values to an identifier that identifies the source database; and

accessing the set of expected values based on the identifier of the source database.

6. A non-transitory machine-readable storage medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

receiving, at a local database, data from a source database among a plurality of databases;

determining the source database of the data from among the plurality of databases based on an attribute of the data;

accessing historical data associated with the source database of the data, the historical data comprising a set of expected values that correspond with the source database of the data;

determining a threshold value based on the set of expected values of the historical data associated with the source database;

performing a comparison of the data from the source database with the threshold value;

detecting an erroneous value among the data from the source database based on the comparison of the data from the source database with the threshold value;

causing display of a notification that indicates the erroneous value at a client device in response to the detecting the erroneous value; and

generating a report that comprises a display of at least a portion of the data from the source database.

7. The non-transitory machine-readable storage medium of claim 6 , wherein the data from the source database comprises a data type, and the accessing the set of expected values includes:

accessing the set of expected values based on the source database and the data type of the data.

8. The non-transitory machine-readable storage medium of claim 6 , wherein the set of expected values include a set of threshold values, and the detecting the erroneous value among the data from the source database includes:

detecting a value from the data received from the source database that transgresses one or more threshold values from among the set of threshold value.

9. The non-transitory machine-readable storage medium of claim 6 , wherein the accessing the set of expected values based on the source database includes:

receiving an input that assigns the set of expected values to an identifier that identifies the source database; and

accessing the set of expected values based on the identifier of the source database.

10. A system comprising:

processors; and

a memory storing instructions that, when executed by at least one processor among the processors, cause the system to perform operations comprising:

receiving, at a local database, data from a source database among a plurality of databases;

determining the source database of the data from among the plurality of databases based on an attribute of the data;

accessing historical data associated with the source database of the data, the historical data comprising a set of expected values that correspond with the source database of the data;

determining a threshold value based on the set of expected values of the historical data associated with the source database;

performing a comparison of the data from the source database with the threshold value;

detecting an erroneous value among the data from the source database based on the comparison of the data from the source database with the threshold value;

causing display of a notification that indicates the erroneous value at a client device in response to the detecting the erroneous value; and

generating a report that comprises a display of at least a portion of the data from the source database.

11. The system of claim 10 , wherein the display of the portion of the data from the source database includes a presentation of the erroneous value, wherein the presentation of the erroneous value is visually distinguished from the display of the data.

12. The system of claim 10 , wherein the data from the source database comprises a data type, and the accessing the set of expected values includes:

accessing the set of expected values based on the source database and the data type of the data.

13. The system of claim 10 , wherein the set of expected values include a set of threshold values, and the detecting the erroneous value among the data from the source database includes:

detecting a value from the data received from the source database that transgresses one or more threshold values from among the set of threshold value.

14. The system of claim 10 , wherein the accessing the set of expected values based on the source database includes:

receiving an input that assigns the set of expected values to an identifier that identifies the source database; and

accessing the set of expected values based on the identifier of the source database.

Assignments (10)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENTS Recorded Jul 3, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0640 →
SECURITY INTEREST Recorded Jul 3, 2022
From: PALANTIR TECHNOLOGIES INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0506 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY LISTED PATENT BY REMOVING APPLICATION NO. 16/832267 FROM THE RELEASE OF SECURITY INTEREST PREVIOUSLY RECORDED ON REEL 052856 FRAME 0382. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 26, 2021
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 057335/0753 →
SECURITY INTEREST Recorded Jun 4, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 052856/0817 →
RELEASE OF SECURITY INTEREST Recorded Jun 4, 2020
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 052856/0382 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 051709/0471 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 051713/0149 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CORRECT RECEIVING PARTY PREVIOUSLY RECORDED AT REEL: 049051 FRAME: 0915. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 23, 2019
From: MILIAUSKAS, GINTAUTAS
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 049840/0843 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2019
From: MILIAUSKAS, GINTAUTAS
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 049835/0714 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 1, 2019
From: MILIAUSKAS, GINTAUTAS
To: PALANTIR TECHNOLOGIES INC
Reel/Frame 049051/0915 →
Continuity (4)
Continuation 15659152 · Jul 25, 2017
Continuation 15227854 · Aug 3, 2016
Continuation 14849454 · Sep 9, 2015
Related Publication 20190243819A1 · Aug 8, 2019