Microsoft Purview Data Catalog lineage user guide

This article provides an overview of the data lineage features in Microsoft Purview Data Catalog.

Background

One of the platform features of Microsoft Purview is the ability to show the lineage between datasets created by data processes. Systems like Data Factory, Data Share, and Power BI capture the lineage of data as it moves. Custom lineage reporting is also supported via Atlas hooks and REST API.

Lineage collection

Metadata collected in Microsoft Purview from enterprise data systems are stitched across to show an end to end data lineage. Data systems that collect lineage into Microsoft Purview are broadly categorized into following three types:

Each system supports a different level of lineage scope. Check the sections below, or your system's individual lineage article, to confirm the scope of lineage currently available.

Known limitations

  • Database Views used as source of process activity(Azure Data Factory, Synapse Pipelines, Azure SQL Database, Azure Data Share) are currently captured as Database Table objects in Microsoft Purview. If the Database is also scanned, the View assets are discovered separately in Microsoft Purview. In this scenario, two assets with same name captured in Microsoft Purview, one as a Table with data lineage and another as a View.

Data processing systems

Data integration and ETL tools can push lineage into Microsoft Purview at execution time. Tools such as Data Factory, Data Share, Synapse, Azure Databricks, and so on, belong to this category of data processing systems. The data processing systems reference datasets as source from different databases and storage solutions to create target datasets. The list of data processing systems currently integrated with Microsoft Purview for lineage are listed in below table.

Data processing system Supported scope
Azure Data Factory Copy activity
Data flow activity
Execute SSIS package activity
Azure Synapse Analytics Copy activity
Data flow activity
Azure SQL Database (Preview) Lineage extraction
Azure Data Share Share snapshot

Data storage systems

Databases & storage solutions such as Oracle, Teradata, and SAP have query engines to transform data using scripting language. Data lineage from views/stored procedures/etc are collected into Microsoft Purview and stitched with lineage from other systems. Lineage is supported for the following data sources via Microsoft Purview data scan. Learn more about the supported lineage scenarios from the respective article.

Category Data source
Database Cassandra
Db2
Google BigQuery
Hive Metastore Database
MySQL
Oracle
PostgreSQL
Snowflake
Teradata
Services and apps Erwin
Looker
SAP ECC
SAP S/4HANA

Data analytics and reporting systems

Data analytics and reporting systems like Azure ML and Power BI report lineage into Microsoft Purview. These systems will use the datasets from storage systems and process through their meta model to create BI Dashboards, ML experiments and so on.

Data analytics & reporting system Supported scope
Power BI Datasets, Dataflows, Reports & Dashboards

Get started with lineage

Lineage in Microsoft Purview includes datasets and processes. Datasets are also referred to as nodes while processes can be also called edges:

  • Dataset (Node): A dataset (structured or unstructured) provided as an input to a process. For example, a SQL Table, Azure blob, and files (such as .csv and .xml), are all considered datasets. In the lineage section of Microsoft Purview, datasets are represented by rectangular boxes.

  • Process (Edge): An activity or transformation performed on a dataset is called a process. For example, ADF Copy activity, Data Share snapshot and so on. In the lineage section of Microsoft Purview, processes are represented by round-edged boxes.

To access lineage information for an asset in Microsoft Purview, follow the steps:

  1. In the Azure portal, go to the Microsoft Purview accounts page.

  2. Select your Microsoft Purview account from the list, and then select Open Microsoft Purview governance portal from the Overview page.

  3. On the Microsoft Purview governance portal Home page, search for a dataset name or the process name such as ADF Copy or Data Flow activity. And then press Enter.

  4. From the search results, select the asset and select its Lineage tab.

    Screenshot showing how to select the Lineage tab.

Asset-level lineage

Microsoft Purview supports asset level lineage for the datasets and processes. To see the asset level lineage go to the Lineage tab of the current asset in the catalog. Select the current dataset asset node. By default the list of columns belonging to the data appears in the left pane.

Screenshot showing how to select View columns in the lineage page

Dataset column lineage

To see column-level lineage of a dataset, go to the Lineage tab of the current asset in the catalog and follow below steps:

  1. Once you are in the lineage tab, in the left pane, select the check box next to each column you want to display in the data lineage.

    Screenshot showing how to select columns to display in the lineage page.

  2. Hover over a selected column on the left pane or in the dataset of the lineage canvas to see the column mapping. All the column instances are highlighted.

    Screenshot showing how to hover over a column name to highlight the column flow in a data lineage path.

  3. If the number of columns is larger than what can be displayed in the left pane, use the filter option to select a specific column by name. Alternatively, you can use your mouse to scroll through the list.

    Screenshot showing how to filter columns by column name on the lineage page.

  4. If the lineage canvas contains more nodes and edges, use the filter to select data asset or process nodes by name. Alternatively, you can use your mouse to pan around the lineage window.

    Screenshot showing data asset nodes by name on the lineage page.

  5. Use the toggle in the left pane to highlight the list of datasets in the lineage canvas. If you turn off the toggle, any asset that contains at least one of the selected columns is displayed. If you turn on the toggle, only datasets that contain all of the columns are displayed.

    Screenshot showing how to use the toggle to filter the list of nodes on the lineage page.

Process column lineage

Data process can take one or more input datasets to produce one or more outputs. In Microsoft Purview, column level lineage is available for process nodes.

  1. Switch between input and output datasets from a drop down in the columns panel.

  2. Select columns from one or more tables to see the lineage flowing from input dataset to corresponding output dataset.

    Screenshot showing columns lineage of a process node.

Browse assets in lineage

  1. Select Switch to asset on any asset to view its corresponding metadata from the lineage view. Doing so is an effective way to browse to another asset in the catalog from the lineage view.

    Screenshot how to select Switch to asset in a lineage data asset.

  2. The lineage canvas could become complex for popular datasets. To avoid clutter, the default view will only show five levels of lineage for the asset in focus. The rest of the lineage can be expanded by selecting the bubbles in the lineage canvas. Data consumers can also hide the assets in the canvas that are of no interest. To further reduce the clutter, turn off the toggle More Lineage at the top of lineage canvas. This action will hide all the bubbles in lineage canvas.

    Screenshot showing how to toggle More lineage.

  3. Use the smart buttons in the lineage canvas to get an optimal view of the lineage. Auto layout, Zoom to fit, Zoom in/out, Full screen, and navigation map are available for an immersive lineage experience in the catalog.

    Screenshot showing how to select the lineage smart buttons.

Next steps