IP Library Granted Patent US 11,687,571
Granted Patent B2
US 11,687,571 · App. 17/542,148 · Granted Jun 27, 2023

Interactive lineage analyzer for data assets

Inventors: Tyler James-Buker Doyle (Seattle, WA); Graeme Riley Britz (Seattle, WA); Jonathan Joseph Bryak (Bothell, WA); Cassius David Butcher (Seattle, WA); Jun Ho Kim (Sammamish, WA); Jiyoung Oh (San Carlos, CA)
Assignee: Tableau Software, LLC
G06F16/289G06F16/245G06F16/26
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,687,571
App. No.
17/542,148
Granted
Jun 27, 2023
Kind
B2
Abstract

Embodiments are directed to managing a data model that includes data objects associated with layers of the data model may be provided. A lineage model that includes lineage objects that has one or more lineage objects associated with a layer may be provided. A lineage object associated with a layer may be activated. A first portion data objects may be determined based on the activated lineage object. An anchor object may be determined from the first portion of data objects. A search of the data model may be employed to provide dependency information based on a position of the anchor data object in the data model. A second portion of data objects may be determined based on the dependency information. A report that includes a list of the second portion of data objects, the dependency information, or the like, may be provided.

Claims (96)

1. A method for managing data using a computer that includes one or more processors, wherein each step of the method is performed by the one or more processors, comprising:

providing a lineage model that includes one or more lineage objects, wherein the one or more lineage objects are each associated with one of one or more data model layers of a data model that includes a plurality of data objects;

activating one of the one or more lineage objects based on an association with a data model layer;

determining a first portion of the plurality of data objects based on the data model and the activated lineage object, wherein the first portion of data objects and the activated lineage object are associated with a same data model layer;

determining an anchor data object from the first portion of data objects based on one or more characteristics of the first portion of data objects;

generating a user interface that includes a lineage panel and an object panel;

displaying, in the lineage panel, the lineage model and the one or more lineage objects;

displaying, in the object panel, the first portion of the data objects;

determining another activated lineage object based on one or more inputs to the lineage panel;

determining another portion of the plurality of data objects based on the other activated lineage object, wherein the other portion of the data objects is displayed in the object panel; and

employing geolocation information to select one or more features, including a time zone, spoken language, currency or calendar format, wherein the one or more selected features are presented in or more of the user interface, a report, an internal process, or a database.

2. The method of claim 1 , further comprising:

providing dependency information based on a position of the anchor data object in the data model;

determining a second portion of the plurality data objects based on the dependency information; and

presenting a list of the second portion of data objects or the dependency information to a user, wherein the presentation includes the one or more selected features in the one or more of the user interface, the report, the internal process or the database.

3. The method of claim 1 , wherein determining the dependency information further comprises employing results of a search of the data model.

4. The method of claim 1 , wherein determining the dependency information, further comprises:

determining one or more attributes that are associated with the anchor data object;

searching the data model based on the one or more attributes and one or more other attributes that are associated with the plurality of data objects in the data model; and

providing the dependency information based on one or more associations or the one or more attributes and the one or more other attributes.

5. The method of claim 1 , further comprising:

including, in the data model, one or more user relationships to one or more of the plurality of data objects; and

in response to one or more modifications to the data model, employing the one or more user relationships to provide one or more notifications to one or more users.

6. The method of claim 1 , further comprising:

in response to a modification to one or more of the plurality of data objects, performing further actions, including:

determining the activated lineage object based on the one or more modified data objects;

determining the anchor data object based on the one or more modified data obj ects;

determining one or more users that are associated the modification based on the dependency information, wherein each user is associated with one or more data objects that are impacted by the modification; and

providing one or more notifications to each user based on each impacted data object associated with the user.

7. The method of claim 1 , wherein determining the second portion of the data objects, further comprises, modifying the second portion of data objects based on one or more filters, wherein the one or more filters are displayed in the lineage panel.

8. A computer readable non-transitory storage media that includes instructions for managing data, wherein execution of the instructions by one or more processors, performs actions, comprising:

providing a lineage model that includes one or more lineage objects, wherein the one or more lineage objects are each associated with one of one or more data model layers of a data model that includes a plurality of data objects;

activating one of the one or more lineage objects based on an association with a data model layer;

determining a first portion of the plurality of data objects based on the data model and the activated lineage object, wherein the first portion of data objects and the activated lineage object are associated with a same data model layer;

determining an anchor data object from the first portion of data objects based on one or more characteristics of the first portion of data objects;

generating a user interface that includes a lineage panel and an object panel;

displaying, in the lineage panel, the lineage model and the one or more lineage objects;

displaying, in the object panel, the first portion of the data objects;

determining another activated lineage object based on one or more inputs to the lineage panel;

determining another portion of the plurality of data objects based on the other activated lineage object, wherein the other portion of the data objects is displayed in the object panel; and

employing geolocation information to select one or more features, including a time zone, spoken language, currency or calendar format, wherein the one or more selected features are presented in or more of the user interface, a report, an internal process, or a database.

9. The media of claim 8 , further comprising:

providing dependency information based on a position of the anchor data object in the data model;

determining a second portion of the plurality data objects based on the dependency information; and

presenting a list of the second portion of data objects or the dependency information to a user, wherein the presentation includes the one or more selected features in the one or more of the user interface, the report, the internal process or the database.

10. The media of claim 8 , wherein determining the dependency information further comprises employing results of a search of the data model.

11. The media of claim 8 , wherein determining the dependency information, further comprises:

determining one or more attributes that are associated with the anchor data object;

searching the data model based on the one or more attributes and one or more other attributes that are associated with the plurality of data objects in the data model; and

providing the dependency information based on one or more associations or the one or more attributes and the one or more other attributes.

12. The media of claim 8 , further comprising:

including, in the data model, one or more user relationships to one or more of the plurality of data objects; and

in response to one or more modifications to the data model, employing the one or more user relationships to provide one or more notifications to one or more users.

13. The media of claim 8 , further comprising:

in response to a modification to one or more of the plurality of data objects, performing further actions, including:

determining the activated lineage object based on the one or more modified data objects;

determining the anchor data object based on the one or more modified data objects;

determining one or more users that are associated the modification based on the dependency information, wherein each user is associated with one or more data objects that are impacted by the modification; and

providing one or more notifications to each user based on each impacted data object associated with the user.

14. The media of claim 8 , wherein determining the second portion of the data objects, further comprises, modifying the second portion of data objects based on one or more filters, wherein the one or more filters are displayed in the lineage panel.

15. A system for managing data over a network, comprising:

a network computer, including:

a memory that stores at least instructions; and

one or more processors that execute instructions that perform actions, comprising:

providing a lineage model that includes one or more lineage objects, wherein the one or more lineage objects are each associated with one of one or more data model layers of a data model that includes a plurality of data objects;

activating one of the one or more lineage objects based on an association with a data model layer;

determining a first portion of the plurality of data objects based on the data model and the activated lineage object, wherein the first portion of data objects and the activated lineage object are associated with a same data model layer;

determining an anchor data object from the first portion of data objects based on one or more characteristics of the first portion of data objects;

generating a user interface that includes a lineage panel and an object panel;

displaying, in the lineage panel, the lineage model and the one or more lineage objects;

displaying, in the object panel, the first portion of the data objects;

determining another activated lineage object based on one or more inputs to the lineage panel;

determining another portion of the plurality of data objects based on the other activated lineage object, wherein the other portion of the data objects is displayed in the object panel; and

employing geolocation information to select one or more features, including a time zone, spoken language, currency or calendar format, wherein the one or more selected features are presented in or more of the user interface, a report, an internal process, or a database; and

a client computer, comprising:

a memory that stores at least instructions; and

one or more processors that execute instructions that perform actions, including:

receiving the report.

16. The system of claim 15 , further comprising:

providing dependency information based on a position of the anchor data object in the data model;

determining a second portion of the plurality data objects based on the dependency information; and

presenting a list of the second portion of data objects or the dependency information to a user, wherein the presentation includes the one or more selected features in the one or more of the user interface, the report, the internal process or the database.

17. The system of claim 15 , wherein determining the dependency information further comprises employing results of a search of the data model.

18. The system of claim 15 , wherein determining the dependency information, further comprises:

determining one or more attributes that are associated with the anchor data object;

searching the data model based on the one or more attributes and one or more other attributes that are associated with the plurality of data objects in the data model; and

providing the dependency information based on one or more associations or the one or more attributes and the one or more other attributes.

19. The system of claim 15 , further comprising:

including, in the data model, one or more user relationships to one or more of the plurality of data objects; and

in response to one or more modifications to the data model, employing the one or more user relationships to provide one or more notifications to one or more users.

20. The system of claim 15 , further comprising:

in response to a modification to one or more of the plurality of data objects, performing further actions, including:

determining the activated lineage object based on the one or more modified data objects;

determining the anchor data object based on the one or more modified data obj ects;

determining one or more users that are associated the modification based on the dependency information, wherein each user is associated with one or more data objects that are impacted by the modification; and

providing one or more notifications to each user based on each impacted data object associated with the user.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2021
From: DOYLE, TYLER JAMES-BUKER; BRITZ, GRAEME RILEY; BRYAK, JONATHAN JOSEPH; BUTCHER, CASSIUS DAVID; KIM, JUN HO; OH, JIYOUNG
To: TABLEAU SOFTWARE, INC.
Reel/Frame 058285/0884 →
CHANGE OF NAME Recorded Dec 3, 2021
From: TABLEAU SOFTWARE, INC.
To: TABLEAU SOFTWARE, LLC
Reel/Frame 058302/0873 →
Continuity (2)
Continuation 16389389 · Apr 19, 2019
Related Publication 20220092090A1 · Mar 24, 2022
Cited By (1)
US 12,554,735