IP Library Granted Patent US 9,996,595
Granted Patent B2
US 9,996,595 · App. 14/816,264 · Granted Jun 12, 2018

Providing full data provenance visualization for versioned datasets

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 9,996,595
App. No.
14/816,264
Granted
Jun 12, 2018
Kind
B2
Abstract

Systems and methods for providing full data provenance visualization for versioned datasets. A method includes receiving selection of a versioned dataset that is within a data pipeline system. The method also includes determining the full data provenance of the selected versioned dataset. The full data provenance may comprise a set of versioned datasets. The method further includes providing for display of a visualization of the full data provenance of the selected versioned dataset. The visualization comprises a graph. The graph comprises a compound node for the selected versioned dataset and for each versioned dataset in the set of versioned datasets. The graph further comprises edges connecting the compounds nodes. Each edge represents a derivation dependency between versions of the versioned datasets represented by the compound nodes connected by the edge.

Claims (41)

1. A method, comprising:

at one or more computing devices having one or more processors and memory storing one or more programs executed by the one or more processors to perform the method, performing the operations of:

storing an input dataset and provenance metadata identifying one or more previous versions of the input dataset;

using a derivation program, transforming data in the input dataset and storing the transformed data as a versioned dataset;

updating the provenance metadata to identify the input dataset in addition to the one or more previous versions of the input dataset;

receiving selection of the versioned dataset that is within a data pipeline system;

determining full data provenance of the selected versioned dataset, the full data provenance comprising a set of versioned datasets, by identifying, in the provenance metadata, at least the input dataset and the one or more previous versions of the input dataset;

providing for display of a visualization of the full data provenance of the selected versioned dataset, the visualization comprising a graph, the graph comprising a compound node for the selected versioned dataset and a compound node for each versioned dataset in the set of versioned datasets, the graph further comprising edges connecting the compounds nodes, each edge representing a derivation dependency between versions of the versioned datasets represented by the compound nodes connected by the edge;

wherein a sub-entry of the compound node for a particular versioned dataset in the set of versioned datasets is visually distinguished in the graphical user interface from other compound node sub-entries of the graph to indicate that a version, of the particular version dataset represented by the sub-entry has been flagged in a database as containing invalid data;

wherein an edge in the graph representing a derivation dependency of a first version of a first versioned dataset in the set of versioned datasets on a second version of a second versioned dataset in the set of versioned datasets is visually distinguished from other edges in the graph to indicate that the first version of the first versioned dataset potentially contains invalid data as a result of the derivation dependency.

2. The method of claim 1 , wherein the compound node of the selected versioned dataset indicates a name or identifier of the selected version dataset; and wherein the compound node for each versioned dataset in the set of versioned datasets indicates a name or identifier of the each versioned dataset.

3. The method of claim 1 , wherein the compound node for each versioned dataset in the set of versioned datasets comprises at least one sub-entry representing a version of the each versioned dataset in the full data provenance of the selected versioned dataset.

4. The method of claim 1 , wherein at least one version of a versioned dataset in the set of versioned datasets contains data generated as a result of one or more Spark systems executing a derivation program taking at least one version of another versioned dataset as input to the derivation program.

5. The method of claim 1 , wherein at least one version of a versioned dataset in the set of versioned datasets contains data generated as a result of one or more MapReduce systems executing a derivation program taking at least one version of another versioned dataset as input as input to the derivation program.

6. One or more non-transitory computer-readable media storing one or more programs, the one or more programs comprising instructions for:

storing an input dataset and provenance metadata identifying one or more previous versions of the input dataset;

using a derivation program, transforming data in the input dataset and storing the transformed data as a versioned dataset;

updating the provenance metadata to identify the input dataset in addition to the one or more previous versions of the input dataset;

receiving selection of a versioned dataset that is within a data pipeline system;

determining full data provenance of the selected versioned dataset, the full data provenance comprising a set of versioned datasets, by identifying, in the provenance metadata, at least the input dataset and the one or more previous versions of the input dataset;

providing for display of a visualization of the full data provenance of the selected versioned dataset, the visualization comprising a graph, the graph comprising a compound node for the selected versioned dataset and for each versioned dataset in the set of versioned datasets, the graph further comprising edges connecting the compounds nodes, each edge representing a derivation dependency between versions of the versioned datasets represented by the compound nodes connected by the edge;

wherein a sub-entry of the compound node for a particular versioned dataset in the set of versioned datasets is visually distinguished in the graphical user interface from other compound node sub-entries of the graph to indicate that a version, of the particular version dataset represented by the sub-entry has been flagged in a database as containing invalid data;

wherein an edge in the graph representing a derivation dependency of a first version of a first versioned dataset in the set of versioned datasets on a second version of a second versioned dataset in the set of versioned datasets is visually distinguished from other edges in the graph to indicate that the first version of the first versioned dataset potentially contains invalid data as a result of the derivation dependency.

7. The one or more non-transitory computer-readable media of claim 6 , wherein the compound node of the selected versioned dataset indicates a name or identifier of the selected version dataset; and wherein the compound node for each versioned dataset in the set of versioned datasets indicates a name or identifier of the each versioned dataset.

8. The one or more non-transitory computer-readable media of claim 6 , wherein the compound node for each versioned dataset in the set of versioned datasets comprises at least one sub-entry representing a version of the each versioned dataset in the full data provenance of the selected versioned dataset.

9. The one or more non-transitory computer-readable media of claim 6 , wherein at least one version of a versioned dataset in the set of versioned datasets contains data generated as a result of one or more Spark systems executing a derivation program taking at least one version of another versioned dataset as input to the derivation program.

10. The one or more non-transitory computer-readable media of claim 6 , wherein at least one version of a versioned dataset in the set of versioned datasets contains data generated as a result of one or more MapReduce systems executing a derivation program taking at least one version of another versioned dataset as input as input to the derivation program.

11. A system comprising:

memory;

one or more processors;

one or more programs stored in the memory and configured for execution by the one or more processors, the one or more programs comprising instructions for:

storing an input dataset and provenance metadata identifying one or more previous versions of the input dataset;

using a derivation program, transforming data in the input dataset and storing the transformed data as a versioned dataset;

updating the provenance metadata to identify the input dataset in addition to the one or more previous versions of the input dataset;

receiving selection of a versioned dataset that is within a data pipeline system;

determining full data provenance of the selected versioned dataset, the full data provenance comprising a set of versioned datasets, by identifying, in the provenance metadata, at least the input dataset and the one or more previous versions of the input dataset;

providing for display of a visualization of the full data provenance of the selected versioned dataset, the visualization comprising a graph, the graph comprising a compound node for the selected versioned dataset and for each versioned dataset in the set of versioned datasets, the graph further comprising edges connecting the compounds nodes, each edge representing a derivation dependency between versions of the versioned datasets represented by the compound nodes connected by the edge;

wherein a sub-entry of the compound node for a particular versioned dataset in the set of versioned datasets is visually distinguished in the graphical user interface from other compound node sub-entries of the graph to indicate that a version, of the particular version dataset represented by the sub-entry has been flagged in a database as containing invalid data;

wherein an edge in the graph representing a derivation dependency of a first version of a first versioned dataset in the set of versioned datasets on a second version of a second versioned dataset in the set of versioned datasets is visually distinguished from other edges in the graph to indicate that the first version of the first versioned dataset potentially contains invalid data as a result of the derivation dependency.

12. The system of claim 11 , wherein the compound node of the selected versioned dataset indicates a name or identifier of the selected version dataset; and wherein the compound node for each versioned dataset in the set of versioned datasets indicates a name or identifier of the each versioned dataset.

13. The system of claim 11 , wherein the compound node for each versioned dataset in the set of versioned datasets comprises at least one sub-entry representing a version of the each versioned dataset in the full data provenance of the selected versioned dataset.

Assignments (8)
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: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 051713/0149 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 051709/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2015
From: BOND, ETHAN
To: PALANTIR TECHNOLOGIES, INC.
Reel/Frame 036239/0658 →