Skip to content

Lineage and impact analysis

Two diagrams describe how an element is connected to the rest of the model: lineage shows what an element is calculated from, and impact analysis shows what depends on it. Both open on top of the current screen and both are built on the same canvas as the fact table configuration.

Lineage

Lineage visualises the dependency tree of a measure — every element needed to calculate it.

Where to open it: the View lineage action in the Measures tab of a fact table, in the Measures catalog of the Data model page, and in the Details from RMD dialog of an element.

What the diagram shows

The measure being analysed is the root of the tree; the leaves are base elements that are mapped directly to a database column. For every measure in the tree three kinds of children are resolved:

Child Description
Facts Facts mapped directly to a database column
Dimensions Dimensions mapped directly to a database column
Measures Nested calculated measures, expanded recursively down to base elements

Node types:

Node Description
Fact table Container that groups the elements belonging to one fact table
Dimension group Container of a dimension group
Measure, dimension, fact An individual element, with its mapping information

Nodes are connected by directed edges that read "is calculated from". Edges are ordered by hierarchy level so that the tree stays readable.

Measure nodes carry the health icon of the measure; hovering over it shows the health summary (see the Measure health cards page).

Working with the diagram

Action Result
Hover over a node Tooltip with the details of the element
Click a node Opens the details of the element
Drag a node Changes its position for readability
Zoom and pan Standard canvas gestures
Search Filters the nodes by name

With edit rights, a measure can be edited directly from the lineage view: open the edit dialog from the diagram, change the measure and save. The diagram closes on save or cancel. If node positions were changed, a warning about unsaved changes appears when you try to close the diagram.

Users without edit rights — the Viewer and Analyst roles — keep the visual interactivity of the diagram: they can drag nodes, zoom, pan and search. These actions are not saved, so editing elements and saving positions are not available to them and no unsaved-changes warning is shown.

Impact analysis

Impact analysis is the inverse of lineage: it shows the elements that depend on the selected element — everything that would be affected if that element were changed or deleted.

Unlike lineage, impact analysis does not require a formula and works for any measure, dimension or fact. It is available to all roles, including Viewer, within the projects a user has access to.

Where to open it: the Open impact analysis action on the toolbar of the RMD screen, active when exactly one row is selected on the Measures, Dimensions or Facts tab, and in the Details from RMD dialog of an element. The diagram opens in the Impact analysis window.

Dependency levels

Dependents are grouped by the way the dependency arises:

Level Description
RMD elements The selected element appears in the formula of another measure, dimension or fact
Fact tables The element, or an affected element downstream of it, is added to a fact table
Dimension groups The element is included in a dimension group
Common measures An affected measure that is not assigned to any fact table
Data marts The element is selected, hidden, filtered or aggregated in a data mart
Data mart views A data mart containing an affected element has a view created in the database

Layers are arranged in that order, from the selected element outwards: RMD elements, then fact tables, dimension groups and common measures, then data marts, then data mart views. The last layer shown is the furthest one that actually contains something.

Diagram elements

Element Description
Element node A measure, dimension or fact. For primary elements the connected source is shown as connection / schema.table / column, or "Connected source not defined" when it is not configured
Container block A fact table, dimension group, Common measures block, data mart or data mart view, with the list of elements it contains
Health icon Shown next to measures in element nodes and in the lists of fact table, Common measures and data mart blocks. It shows the overall health status of the measure, and hovering over it shows the health summary (see the Measure health cards page)
Arrows Directed links pointing from an element to the elements that depend on it. This is the opposite direction to lineage
Circular-dependency indicator Shown on an element that re-enters its own dependency chain. The branch is not expanded further; the tooltip reads "Circular dependency detected - expansion stopped"
Orphaned-reference indicator Shown on a reference to an element that no longer exists, with the tooltip "Referenced element no longer exists"

Working with the diagram

Action Result
Click an element node Highlights that element everywhere it occurs, including inside the formulas of its dependents, and highlights only its outgoing arrows
Click it again, or click the background Clears the highlighting
Drag a node Changes its position for readability. The diagram is read-only and positions are not saved
Select layers Dropdown with two checkboxes, both selected by default: Complete fact tables and data marts shows all elements of a container instead of only the affected ones, and Data mart views in the database shows the data mart view layer

The diagram is capped at 10 dependency levels and 500 nodes. Beyond that the tree is cut off and the message "The tree is large and was partially collapsed" appears on the canvas.

Editing from the diagram

Dialogs open on top of the impact analysis view, and the tree is rebuilt automatically after a save.

Object Available action
Measure, dimension, fact View the details of the element; edit a measure
Fact table Edit fact table
Dimension group Edit dimension group
Data mart Edit data mart
Data mart view Manage the data mart view in the database: show it, update it or delete it

Whether a container can be edited depends on the user's effective role in the project:

Container Roles with edit rights
Fact table, dimension group Super administrator, Administrator, Developer
Data mart Super administrator, Administrator, Developer, Analyst

The Viewer role can open the diagram and the details dialogs, but cannot edit containers.

States and concurrent changes

  • The tree is a snapshot: changes made by other users while the diagram is open are not pushed into it. It is rebuilt when you perform an action that needs current data
  • If an element or container was deleted by another user in the meantime, the message "This element no longer exists. The impact tree will be refreshed." appears and the tree is reloaded
  • If the tree cannot be built, the diagram shows "Failed to load the impact analysis"
  • Closing the window needs no confirmation: nothing in the impact analysis view is saved

Limitations:

  • Impact analysis has no search field and no export
  • An element with no dependents produces an empty canvas