Documenting and cataloging Power BI
Catalog and documentation
Dataedo imports reports, datasets, dashboards and dataflows available in a selected workspace.
Power Bi Reports
Overview
On the overview page, you will see basic information about the report such as report url, name, and embed url which can you can use to embed the report. You will also be able to peek at the documented report in a live embed view from Power Bi Service.
Visualisations and fields
During the import process, Dataedo will document the following report's elements: - Pages - Visuals - Visuals fields
On the following, sample report which was created and is property of obviEnce, you can see a few pages, while currently active is Market Share. I also highlighted a visual with generated title - % Unit Market Share YOY Change by Rolling Period and Region. It uses three fields Rolling Period, % Unit Market Share YOY Change, and Region.
That report will be documented by Dataedo in the following way:
- Market Share page - field no. 2 with data type Page
- % Unit Market Share YOY Change by Rolling Period and Region - the field no. 7 under Market Share Page.
- Used fields - all fields under visual.
Paginated Reports
Overview
In Dataedo, you have the capability to document a special type of reports - paginated reports. This report type is also known from other Microsoft systems, such as SSRS. On the overview page, you will see basic information about the paginated report such as report url, name, and embed url which can you can use to embed the report.
Visualisations and fields
For paginated reports, we retrieve the report content, its fields and visualization elements.
Datasets, Paginated Reports Datasets and Dataflows
In Dataedo, the system documents objects from Power BI like the Semantic Model (formerly known as Dataset), Dataset from a Paginated Report, and Dataflow as Dataset.
In cases where the Dataset (Semantic Model) is created using a Live connection (e.g., for an Analysis Services data source), to create a detailed import with columns and lineage, Dataedo will require a previously documented source database.
Overview
The overview tab contains basic information regarding the dataset.
Dataset Tables
Starting with version 24.2, Dataedo will import tables from datasets as separate objects named Dataset Tables. The name of each table will include a prefix that consists of the Dataset name.
Columns
Dataedo will document all tables, columns and measures in a dataset in the hierarchical form:
Scripts
In the case of Paginated Reports where the datasets are created from an SQL script, this script is recorded in the documentation.
Data Lineage
The Linked Source serves as the foundation for building lineage in the Power BI connector. When Dataedo imports a workspace, it retrieves Datasources, which are referred to as Linked Source in Dataedo. Dataedo then connects existing documentation with the datasources retrieved from Power BI. If it finds a matching connection, Dataedo will build lineage based on this connection. You can read more about linked sources in this article.
Power Bi Report Lineage
Dataedo will identify and create data lineage from Dataset Table to Report always, for any mode of the dataset (Import, Direct Query, Live connection). Lineage from Datasources to Dataset Table will be created if Datasource was documented in Dataedo. The documentation has to reside in the same repository as the Power BI Documentation. You can find a detailed description of data lineage capabilities in the Power Bi documentation in this article.
Currently, Dataedo automatically creates lineage at both the object and column levels for the most popular data sources:
- SQL Server → Power BI
- Microsoft Fabric Data Lakehouse → Power BI
- Microsoft Fabric Data Warehouse → Power BI
- PostgreSQL → Power BI
- MySQL → Power BI
- SQL Server Analysis Services Tabular → Power BI
- SQL Server Analysis Services Multidimensional → Power BI
- Snowflake → Power BI
- Databricks Unity Catalog → Power BI
- File (csv, xlsx) → Power BI
- SQL Server → Power BI Paginated Report
Dataedo creates lineage based on reading the DAX script, which allows it to accurately map relationships between data sources, even when column or table names differ from the source. By analyzing the DAX script, Dataedo also generates lineage for measures, ensuring precise tracking of data transformations.
Additionally, Dataedo supports lineage for Dataflows. In these cases, Dataedo automatically generates a comprehensive lineage that captures the entire data processing flow, covering every stage from the data source, through Dataflow tables, to dataset tables and reports:
Data Source → Dataflow Table → Dataset Table → Report
This detailed lineage mapping enables complete understanding and tracking of data transformations and flows at every stage, which is crucial for data management, auditing, and compliance purposes.
Relationships
The program imports relationships from Power BI datasets, providing clear visibility into the structure of your data model. This allows to easily identify relationships such as many-to-many, one-to-many, and others, ensuring a thorough understanding of how your data is connected.
Descriptions, aliases and custom fields
When technical metadata is imported users will be able to edit descriptions of each object and element, provide meaningful aliases (titles), and document everything with additional custom fields.
Business Glossary
You can link a Business Glossary term to any Power Bi object.
Lookups / Reference data
You will be able to build Lookups for columns in Power Bi reports and datasets and feed them with distinct values from a column.
Data Classification
You will be able to run classification on Power Bi reports and datasets in the repository in a search of columns containing potentially sensitive data. All built-in functions are supported.
Importing changes and schema change tracking
To import changes from Power Bi Service and update metadata in Dataedo simply use the Import changes option. All changes in reports and datasets will be shown under the schema change tracking tab.
Description changes
Changes to descriptions in Dataedo Desktop and Web Catalog are tracked and saved in the repository.
Share in Web Catalog or export to HTML, PDF or Excel
Documentations can be exported by sharing it in web catalog or generating HTML, PDF or Excel.
Prerequisities
How to Connect to Power Bi
Workspace access
To document the Power Bi workspace, you need to have at least Viewer access to the workspace. To verify it, simply open app.powerbi.com service, and see if the workspace to be documented is available to browse.
Documenting Dataset is available for Pro and Premium workspaces.
Dataedo connection
To connect to Power Bi select Add source -> New connection. On the connectors list select Power BI Reports and Datasets.
Choose one of the available login methods: - Interactive (logging in with a Microsoft account) - Service Principal
(more information about those login methods can be found here)
Connection Details
- Workspaces - you can provide a workspace name by simply typing it or clicking Sign In button to log in to your Power Bi account and list available workspaces.
- Premium Workspace checkbox - check this box if you have any problem with importing your workspace (this is an alternative method of connecting to Power Bi), available when your workspace has premium capacity.
- XMLA Endpoint - if you have checked Premium Workspace, you will also see this box where you need to place the Endpoint. For instructions on how to get this value, see Connection Requirements.
- Document only report pages - in case of timeouts, you can check this box. Dataedo will document only reports' pages, which should help avoid timeouts during the import process.
After performing steps according to chosen login method click Connect and go through the import process.
Outcome
Specification
Imported metadata
Dataedo reads following metadata from Power Bi Workspace.
Imported | Editable | |
---|---|---|
Power Bi Reports and Dashboards | ✅ | ✅ |
Visualizations and fields | ✅ | ✅ |
Data types | ✅ | |
Descriptions | ✅ | ✅ |
URL | ✅ | |
Embed URL | ✅ | |
Description | ✅ | ✅ |
Data Lineage | ✅ | ✅ |
Paginated Reports | ✅ | ✅ |
Visualizations and fields | ✅ | ✅ |
Data types | ✅ | |
Descriptions | ✅ | ✅ |
URL | ✅ | |
Embed URL | ✅ | |
Description | ✅ | ✅ |
Data Lineage | ✅ | ✅ |
Datasets and Dataflows | ✅ | ✅ |
Columns | ✅ | ✅ |
Data types | ✅ | |
Nullability | ✅ | |
Descriptions | ✅ | ✅ |
Description | ✅ | ✅ |
Data Lineage | ✅ | ✅ |
Relationships | ✅ | ✅ |
Shared metadata | ||
Dependencies | ✅ | ✅ |
Created time | ✅ | |
Last updated time | ✅ |