mirror of
https://github.com/open-metadata/OpenMetadata.git
synced 2025-11-08 15:04:29 +00:00
Modified PBI docs (#15075)
This commit is contained in:
parent
2b56e34b19
commit
dcc91a8f37
@ -26,20 +26,52 @@ Configure and schedule PowerBI metadata and profiler workflows from the OpenMeta
|
|||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
|
{% note noteType="Warning" %}
|
||||||
To access the PowerBI APIs and import dashboards, charts, and datasets from PowerBI into OpenMetadata, a `PowerBI Pro` license is necessary.
|
To access the PowerBI APIs and import dashboards, charts, and datasets from PowerBI into OpenMetadata, a `PowerBI Pro` license is necessary.
|
||||||
|
{% /note noteType="Warning" %}
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
PowerBI dataflows are not yet supported.
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
### PowerBI Admin and Non-Admin APIs:
|
||||||
|
|
||||||
|
While configuring the PowerBI ingestion you can choose whether to use the PowerBI Admin APIs to retrieve the metadata or use the PowerBI Non-Admin APIs. Please check below for the the difference in their functionality:
|
||||||
|
- Enabled (Use PowerBI Admin APIs)
|
||||||
|
Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance.
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
|
||||||
|
When using the PowerBI Admin APIs, the table and dataset information used to generate lineage is gathered using the PowerBI [Scan Result](https://learn.microsoft.com/en-us/rest/api/power-bi/admin/workspace-info-get-scan-result) API. This API has no limitations and hence does not restrict getting the necessary data for generating lineage.
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
- Disabled (Use Non-Admin PowerBI APIs)
|
||||||
|
Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them.
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
|
||||||
|
When using the PowerBI Non-Admin APIs, the table and dataset information used to generate lineage is gathered using the PowerBI [Get Dataset Tables](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables) API. This API only retrieves the table information if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets).
|
||||||
|
Hence the lineage can only be created for push datasets in this case.
|
||||||
|
|
||||||
|
For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations).
|
||||||
|
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
### PowerBI Account Setup
|
### PowerBI Account Setup
|
||||||
|
Follow the steps below to configure the account setup for PowerBI connector:
|
||||||
|
### Step 1: Enable API permissions from the PowerBI Admin console
|
||||||
|
We extract the information from PowerBI using APIs, this is a manual step a PowerBI Admin needs to do to ensure we can get the right information.
|
||||||
|
|
||||||
### Step 1: Create an Azure AD app and configure the PowerBI Admin consle
|
Login to the [Power BI](https://app.powerbi.com/) as Admin and from `Tenant` settings allow below permissions.
|
||||||
|
|
||||||
Please follow the steps mentioned [here](https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal) for setting up the Azure AD application service principle and configure PowerBI admin settings
|
|
||||||
|
|
||||||
Login to [Power BI](https://app.powerbi.com/) as Admin and from `Tenant` settings allow below permissions.
|
|
||||||
- Allow service principles to use Power BI APIs
|
- Allow service principles to use Power BI APIs
|
||||||
- Allow service principals to use read-only Power BI admin APIs
|
- Allow service principals to use read-only Power BI admin APIs
|
||||||
- Enhance admin APIs responses with detailed metadata
|
- Enhance admin APIs responses with detailed metadata
|
||||||
|
|
||||||
### Step 2: Provide necessary API permissions to the app
|
### Step 2: Create the App in Azure AD
|
||||||
|
Please follow the steps mentioned [here](https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal) for setting up the Azure AD application service principle.
|
||||||
|
|
||||||
|
### Step 3: Provide necessary API permissions to the Azure AD app
|
||||||
Go to the `Azure Ad app registrations` page, select your app and add the dashboard permissions to the app for PowerBI service and grant admin consent for the same:
|
Go to the `Azure Ad app registrations` page, select your app and add the dashboard permissions to the app for PowerBI service and grant admin consent for the same:
|
||||||
|
|
||||||
The required permissions are:
|
The required permissions are:
|
||||||
@ -48,16 +80,20 @@ The required permissions are:
|
|||||||
Optional Permissions: (Without granting these permissions, the dataset information cannot be retrieved and the datamodel and lineage processing will be skipped)
|
Optional Permissions: (Without granting these permissions, the dataset information cannot be retrieved and the datamodel and lineage processing will be skipped)
|
||||||
- `Dataset.Read.All`
|
- `Dataset.Read.All`
|
||||||
|
|
||||||
{% note %}
|
{% note noteType="Warning" %}
|
||||||
|
|
||||||
Make sure that in the API permissions section **Tenant** related permissions are not being given to the app
|
Make sure that in the API permissions section **Tenant** related permissions are not being given to the app
|
||||||
Please refer [here](https://stackoverflow.com/questions/71001110/power-bi-rest-api-requests-not-authorizing-as-expected) for detailed explanation
|
Please refer [here](https://stackoverflow.com/questions/71001110/power-bi-rest-api-requests-not-authorizing-as-expected) for detailed explanation
|
||||||
|
|
||||||
|
{% /note noteType="Warning" %}
|
||||||
{% /note %}
|
{% /note %}
|
||||||
|
|
||||||
### Step 3: Create New PowerBI workspace
|
### Step 4: PowerBI Workspaces
|
||||||
The service principal only works with [new workspaces](https://docs.microsoft.com/en-us/power-bi/collaborate-share/service-create-the-new-workspaces).
|
The service principal does not take into account the default user workspaces e.g `My Workspace`.
|
||||||
[For reference](https://community.powerbi.com/t5/Service/Error-while-executing-Get-dataset-call-quot-API-is-not/m-p/912360#M85711)
|
|
||||||
|
Create new workspaces in PowerBI by following the document [here](https://docs.microsoft.com/en-us/power-bi/collaborate-share/service-create-the-new-workspaces)
|
||||||
|
|
||||||
|
For reference here is a [thread](https://community.powerbi.com/t5/Service/Error-while-executing-Get-dataset-call-quot-API-is-not/m-p/912360#M85711) referring to the same
|
||||||
|
|
||||||
## Metadata Ingestion
|
## Metadata Ingestion
|
||||||
|
|
||||||
@ -131,24 +167,11 @@ By default, the pagination limit is set to 100 records, which is also the maximu
|
|||||||
**Use Admin APIs**:
|
**Use Admin APIs**:
|
||||||
|
|
||||||
Option for using the PowerBI admin APIs:
|
Option for using the PowerBI admin APIs:
|
||||||
|
|
||||||
|
Refer to the section [here](/connectors/dashboard/powerbi#powerbi-admin-and-nonadmin-apis) to get more information.
|
||||||
|
|
||||||
- Enabled (Use PowerBI Admin APIs)
|
- Enabled (Use PowerBI Admin APIs)
|
||||||
Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance.
|
|
||||||
|
|
||||||
{% note %}
|
|
||||||
|
|
||||||
When using the PowerBI Admin APIs there are no limitations on the Datasets that are retrieved for creating lineage information.
|
|
||||||
|
|
||||||
{% /note %}
|
|
||||||
|
|
||||||
- Disabled (Use Non-Admin PowerBI APIs)
|
- Disabled (Use Non-Admin PowerBI APIs)
|
||||||
Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them.
|
|
||||||
|
|
||||||
{% note %}
|
|
||||||
|
|
||||||
When using the PowerBI Non-Admin APIs, the lineage information can only be generated if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets).
|
|
||||||
For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations).
|
|
||||||
|
|
||||||
{% /note %}
|
|
||||||
|
|
||||||
{% /extraContent %}
|
{% /extraContent %}
|
||||||
|
|
||||||
|
|||||||
@ -26,24 +26,52 @@ Configure and schedule PowerBI metadata and profiler workflows from the OpenMeta
|
|||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
{%inlineCallout icon="description" bold="OpenMetadata 0.12 or later" href="/deployment"%}
|
{% note noteType="Warning" %}
|
||||||
To deploy OpenMetadata, check the Deployment guides.
|
|
||||||
{%/inlineCallout%}
|
|
||||||
|
|
||||||
To access the PowerBI APIs and import dashboards, charts, and datasets from PowerBI into OpenMetadata, a `PowerBI Pro` license is necessary.
|
To access the PowerBI APIs and import dashboards, charts, and datasets from PowerBI into OpenMetadata, a `PowerBI Pro` license is necessary.
|
||||||
|
{% /note noteType="Warning" %}
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
PowerBI dataflows are not yet supported.
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
### PowerBI Admin and Non-Admin APIs:
|
||||||
|
|
||||||
|
While configuring the PowerBI ingestion you can choose whether to use the PowerBI Admin APIs to retrieve the metadata or use the PowerBI Non-Admin APIs. Please check below for the the difference in their functionality:
|
||||||
|
- Enabled (Use PowerBI Admin APIs)
|
||||||
|
Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance.
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
|
||||||
|
When using the PowerBI Admin APIs, the table and dataset information used to generate lineage is gathered using the PowerBI [Scan Result](https://learn.microsoft.com/en-us/rest/api/power-bi/admin/workspace-info-get-scan-result) API. This API has no limitations and hence does not restrict getting the necessary data for generating lineage.
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
- Disabled (Use Non-Admin PowerBI APIs)
|
||||||
|
Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them.
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
|
||||||
|
When using the PowerBI Non-Admin APIs, the table and dataset information used to generate lineage is gathered using the PowerBI [Get Dataset Tables](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables) API. This API only retrieves the table information if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets).
|
||||||
|
Hence the lineage can only be created for push datasets in this case.
|
||||||
|
|
||||||
|
For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations).
|
||||||
|
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
### PowerBI Account Setup
|
### PowerBI Account Setup
|
||||||
|
Follow the steps below to configure the account setup for PowerBI connector:
|
||||||
|
### Step 1: Enable API permissions from the PowerBI Admin console
|
||||||
|
We extract the information from PowerBI using APIs, this is a manual step a PowerBI Admin needs to do to ensure we can get the right information.
|
||||||
|
|
||||||
### Step 1: Create an Azure AD app and configure the PowerBI Admin consle
|
Login to the [Power BI](https://app.powerbi.com/) as Admin and from `Tenant` settings allow below permissions.
|
||||||
|
|
||||||
Please follow the steps mentioned [here](https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal) for setting up the Azure AD application service principle and configure PowerBI admin settings
|
|
||||||
|
|
||||||
Login to [Power BI](https://app.powerbi.com/) as Admin and from `Tenant` settings allow below permissions.
|
|
||||||
- Allow service principles to use Power BI APIs
|
- Allow service principles to use Power BI APIs
|
||||||
- Allow service principals to use read-only Power BI admin APIs
|
- Allow service principals to use read-only Power BI admin APIs
|
||||||
- Enhance admin APIs responses with detailed metadata
|
- Enhance admin APIs responses with detailed metadata
|
||||||
|
|
||||||
### Step 2: Provide necessary API permissions to the app
|
### Step 2: Create the App in Azure AD
|
||||||
|
Please follow the steps mentioned [here](https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal) for setting up the Azure AD application service principle.
|
||||||
|
|
||||||
|
### Step 3: Provide necessary API permissions to the Azure AD app
|
||||||
Go to the `Azure Ad app registrations` page, select your app and add the dashboard permissions to the app for PowerBI service and grant admin consent for the same:
|
Go to the `Azure Ad app registrations` page, select your app and add the dashboard permissions to the app for PowerBI service and grant admin consent for the same:
|
||||||
|
|
||||||
The required permissions are:
|
The required permissions are:
|
||||||
@ -52,16 +80,20 @@ The required permissions are:
|
|||||||
Optional Permissions: (Without granting these permissions, the dataset information cannot be retrieved and the datamodel and lineage processing will be skipped)
|
Optional Permissions: (Without granting these permissions, the dataset information cannot be retrieved and the datamodel and lineage processing will be skipped)
|
||||||
- `Dataset.Read.All`
|
- `Dataset.Read.All`
|
||||||
|
|
||||||
{% note %}
|
{% note noteType="Warning" %}
|
||||||
|
|
||||||
Make sure that in the API permissions section **Tenant** related permissions are not being given to the app
|
Make sure that in the API permissions section **Tenant** related permissions are not being given to the app
|
||||||
Please refer [here](https://stackoverflow.com/questions/71001110/power-bi-rest-api-requests-not-authorizing-as-expected) for detailed explanation
|
Please refer [here](https://stackoverflow.com/questions/71001110/power-bi-rest-api-requests-not-authorizing-as-expected) for detailed explanation
|
||||||
|
|
||||||
|
{% /note noteType="Warning" %}
|
||||||
{% /note %}
|
{% /note %}
|
||||||
|
|
||||||
### Step 3: Create New PowerBI workspace
|
### Step 4: PowerBI Workspaces
|
||||||
The service principal only works with [new workspaces](https://docs.microsoft.com/en-us/power-bi/collaborate-share/service-create-the-new-workspaces).
|
The service principal does not take into account the default user workspaces e.g `My Workspace`.
|
||||||
[For reference](https://community.powerbi.com/t5/Service/Error-while-executing-Get-dataset-call-quot-API-is-not/m-p/912360#M85711)
|
|
||||||
|
Create new workspaces in PowerBI by following the document [here](https://docs.microsoft.com/en-us/power-bi/collaborate-share/service-create-the-new-workspaces)
|
||||||
|
|
||||||
|
For reference here is a [thread](https://community.powerbi.com/t5/Service/Error-while-executing-Get-dataset-call-quot-API-is-not/m-p/912360#M85711) referring to the same
|
||||||
|
|
||||||
### Python Requirements
|
### Python Requirements
|
||||||
|
|
||||||
@ -178,24 +210,11 @@ By default, the pagination limit is set to 100 records, which is also the maximu
|
|||||||
**Use Admin APIs**:
|
**Use Admin APIs**:
|
||||||
|
|
||||||
Option for using the PowerBI admin APIs:
|
Option for using the PowerBI admin APIs:
|
||||||
|
|
||||||
|
Refer to the section [here](/connectors/dashboard/powerbi#powerbi-admin-and-nonadmin-apis) to get more information.
|
||||||
|
|
||||||
- Enabled (Use PowerBI Admin APIs)
|
- Enabled (Use PowerBI Admin APIs)
|
||||||
Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance.
|
|
||||||
|
|
||||||
{% note %}
|
|
||||||
|
|
||||||
When using the PowerBI Admin APIs there are no limitations on the Datasets that are retrieved for creating lineage information.
|
|
||||||
|
|
||||||
{% /note %}
|
|
||||||
|
|
||||||
- Disabled (Use Non-Admin PowerBI APIs)
|
- Disabled (Use Non-Admin PowerBI APIs)
|
||||||
Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them.
|
|
||||||
|
|
||||||
{% note %}
|
|
||||||
|
|
||||||
When using the PowerBI Non-Admin APIs, the lineage information can only be generated if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets).
|
|
||||||
For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations).
|
|
||||||
|
|
||||||
{% /note %}
|
|
||||||
|
|
||||||
{% /codeInfo %}
|
{% /codeInfo %}
|
||||||
|
|
||||||
|
|||||||
@ -27,20 +27,52 @@ Configure and schedule PowerBI metadata and profiler workflows from the OpenMeta
|
|||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
|
{% note noteType="Warning" %}
|
||||||
To access the PowerBI APIs and import dashboards, charts, and datasets from PowerBI into OpenMetadata, a `PowerBI Pro` license is necessary.
|
To access the PowerBI APIs and import dashboards, charts, and datasets from PowerBI into OpenMetadata, a `PowerBI Pro` license is necessary.
|
||||||
|
{% /note noteType="Warning" %}
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
PowerBI dataflows are not yet supported.
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
### PowerBI Admin and Non-Admin APIs:
|
||||||
|
|
||||||
|
While configuring the PowerBI ingestion you can choose whether to use the PowerBI Admin APIs to retrieve the metadata or use the PowerBI Non-Admin APIs. Please check below for the the difference in their functionality:
|
||||||
|
- Enabled (Use PowerBI Admin APIs)
|
||||||
|
Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance.
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
|
||||||
|
When using the PowerBI Admin APIs, the table and dataset information used to generate lineage is gathered using the PowerBI [Scan Result](https://learn.microsoft.com/en-us/rest/api/power-bi/admin/workspace-info-get-scan-result) API. This API has no limitations and hence does not restrict getting the necessary data for generating lineage.
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
- Disabled (Use Non-Admin PowerBI APIs)
|
||||||
|
Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them.
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
|
||||||
|
When using the PowerBI Non-Admin APIs, the table and dataset information used to generate lineage is gathered using the PowerBI [Get Dataset Tables](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables) API. This API only retrieves the table information if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets).
|
||||||
|
Hence the lineage can only be created for push datasets in this case.
|
||||||
|
|
||||||
|
For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations).
|
||||||
|
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
### PowerBI Account Setup
|
### PowerBI Account Setup
|
||||||
|
Follow the steps below to configure the account setup for PowerBI connector:
|
||||||
|
### Step 1: Enable API permissions from the PowerBI Admin console
|
||||||
|
We extract the information from PowerBI using APIs, this is a manual step a PowerBI Admin needs to do to ensure we can get the right information.
|
||||||
|
|
||||||
### Step 1: Create an Azure AD app and configure the PowerBI Admin consle
|
Login to the [Power BI](https://app.powerbi.com/) as Admin and from `Tenant` settings allow below permissions.
|
||||||
|
|
||||||
Please follow the steps mentioned [here](https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal) for setting up the Azure AD application service principle and configure PowerBI admin settings
|
|
||||||
|
|
||||||
Login to [Power BI](https://app.powerbi.com/) as Admin and from `Tenant` settings allow below permissions.
|
|
||||||
- Allow service principles to use Power BI APIs
|
- Allow service principles to use Power BI APIs
|
||||||
- Allow service principals to use read-only Power BI admin APIs
|
- Allow service principals to use read-only Power BI admin APIs
|
||||||
- Enhance admin APIs responses with detailed metadata
|
- Enhance admin APIs responses with detailed metadata
|
||||||
|
|
||||||
### Step 2: Provide necessary API permissions to the app
|
### Step 2: Create the App in Azure AD
|
||||||
|
Please follow the steps mentioned [here](https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal) for setting up the Azure AD application service principle.
|
||||||
|
|
||||||
|
### Step 3: Provide necessary API permissions to the Azure AD app
|
||||||
Go to the `Azure Ad app registrations` page, select your app and add the dashboard permissions to the app for PowerBI service and grant admin consent for the same:
|
Go to the `Azure Ad app registrations` page, select your app and add the dashboard permissions to the app for PowerBI service and grant admin consent for the same:
|
||||||
|
|
||||||
The required permissions are:
|
The required permissions are:
|
||||||
@ -49,16 +81,20 @@ The required permissions are:
|
|||||||
Optional Permissions: (Without granting these permissions, the dataset information cannot be retrieved and the datamodel and lineage processing will be skipped)
|
Optional Permissions: (Without granting these permissions, the dataset information cannot be retrieved and the datamodel and lineage processing will be skipped)
|
||||||
- `Dataset.Read.All`
|
- `Dataset.Read.All`
|
||||||
|
|
||||||
{% note %}
|
{% note noteType="Warning" %}
|
||||||
|
|
||||||
Make sure that in the API permissions section **Tenant** related permissions are not being given to the app
|
Make sure that in the API permissions section **Tenant** related permissions are not being given to the app
|
||||||
Please refer [here](https://stackoverflow.com/questions/71001110/power-bi-rest-api-requests-not-authorizing-as-expected) for detailed explanation
|
Please refer [here](https://stackoverflow.com/questions/71001110/power-bi-rest-api-requests-not-authorizing-as-expected) for detailed explanation
|
||||||
|
|
||||||
|
{% /note noteType="Warning" %}
|
||||||
{% /note %}
|
{% /note %}
|
||||||
|
|
||||||
### Step 3: Create New PowerBI workspace
|
### Step 4: PowerBI Workspaces
|
||||||
The service principal only works with [new workspaces](https://docs.microsoft.com/en-us/power-bi/collaborate-share/service-create-the-new-workspaces).
|
The service principal does not take into account the default user workspaces e.g `My Workspace`.
|
||||||
[For reference](https://community.powerbi.com/t5/Service/Error-while-executing-Get-dataset-call-quot-API-is-not/m-p/912360#M85711)
|
|
||||||
|
Create new workspaces in PowerBI by following the document [here](https://docs.microsoft.com/en-us/power-bi/collaborate-share/service-create-the-new-workspaces)
|
||||||
|
|
||||||
|
For reference here is a [thread](https://community.powerbi.com/t5/Service/Error-while-executing-Get-dataset-call-quot-API-is-not/m-p/912360#M85711) referring to the same
|
||||||
|
|
||||||
## Metadata Ingestion
|
## Metadata Ingestion
|
||||||
|
|
||||||
@ -132,24 +168,11 @@ By default, the pagination limit is set to 100 records, which is also the maximu
|
|||||||
**Use Admin APIs**:
|
**Use Admin APIs**:
|
||||||
|
|
||||||
Option for using the PowerBI admin APIs:
|
Option for using the PowerBI admin APIs:
|
||||||
|
|
||||||
|
Refer to the section [here](/connectors/dashboard/powerbi#powerbi-admin-and-nonadmin-apis) to get more information.
|
||||||
|
|
||||||
- Enabled (Use PowerBI Admin APIs)
|
- Enabled (Use PowerBI Admin APIs)
|
||||||
Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance.
|
|
||||||
|
|
||||||
{% note %}
|
|
||||||
|
|
||||||
When using the PowerBI Admin APIs there are no limitations on the Datasets that are retrieved for creating lineage information.
|
|
||||||
|
|
||||||
{% /note %}
|
|
||||||
|
|
||||||
- Disabled (Use Non-Admin PowerBI APIs)
|
- Disabled (Use Non-Admin PowerBI APIs)
|
||||||
Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them.
|
|
||||||
|
|
||||||
{% note %}
|
|
||||||
|
|
||||||
When using the PowerBI Non-Admin APIs, the lineage information can only be generated if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets).
|
|
||||||
For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations).
|
|
||||||
|
|
||||||
{% /note %}
|
|
||||||
|
|
||||||
{% /extraContent %}
|
{% /extraContent %}
|
||||||
|
|
||||||
|
|||||||
@ -26,24 +26,52 @@ Configure and schedule PowerBI metadata and profiler workflows from the OpenMeta
|
|||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
{%inlineCallout icon="description" bold="OpenMetadata 0.12 or later" href="/deployment"%}
|
{% note noteType="Warning" %}
|
||||||
To deploy OpenMetadata, check the Deployment guides.
|
|
||||||
{%/inlineCallout%}
|
|
||||||
|
|
||||||
To access the PowerBI APIs and import dashboards, charts, and datasets from PowerBI into OpenMetadata, a `PowerBI Pro` license is necessary.
|
To access the PowerBI APIs and import dashboards, charts, and datasets from PowerBI into OpenMetadata, a `PowerBI Pro` license is necessary.
|
||||||
|
{% /note noteType="Warning" %}
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
PowerBI dataflows are not yet supported.
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
### PowerBI Admin and Non-Admin APIs:
|
||||||
|
|
||||||
|
While configuring the PowerBI ingestion you can choose whether to use the PowerBI Admin APIs to retrieve the metadata or use the PowerBI Non-Admin APIs. Please check below for the the difference in their functionality:
|
||||||
|
- Enabled (Use PowerBI Admin APIs)
|
||||||
|
Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance.
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
|
||||||
|
When using the PowerBI Admin APIs, the table and dataset information used to generate lineage is gathered using the PowerBI [Scan Result](https://learn.microsoft.com/en-us/rest/api/power-bi/admin/workspace-info-get-scan-result) API. This API has no limitations and hence does not restrict getting the necessary data for generating lineage.
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
|
- Disabled (Use Non-Admin PowerBI APIs)
|
||||||
|
Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them.
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
|
||||||
|
When using the PowerBI Non-Admin APIs, the table and dataset information used to generate lineage is gathered using the PowerBI [Get Dataset Tables](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables) API. This API only retrieves the table information if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets).
|
||||||
|
Hence the lineage can only be created for push datasets in this case.
|
||||||
|
|
||||||
|
For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations).
|
||||||
|
|
||||||
|
{% /note %}
|
||||||
|
|
||||||
### PowerBI Account Setup
|
### PowerBI Account Setup
|
||||||
|
Follow the steps below to configure the account setup for PowerBI connector:
|
||||||
|
### Step 1: Enable API permissions from the PowerBI Admin console
|
||||||
|
We extract the information from PowerBI using APIs, this is a manual step a PowerBI Admin needs to do to ensure we can get the right information.
|
||||||
|
|
||||||
### Step 1: Create an Azure AD app and configure the PowerBI Admin consle
|
Login to the [Power BI](https://app.powerbi.com/) as Admin and from `Tenant` settings allow below permissions.
|
||||||
|
|
||||||
Please follow the steps mentioned [here](https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal) for setting up the Azure AD application service principle and configure PowerBI admin settings
|
|
||||||
|
|
||||||
Login to [Power BI](https://app.powerbi.com/) as Admin and from `Tenant` settings allow below permissions.
|
|
||||||
- Allow service principles to use Power BI APIs
|
- Allow service principles to use Power BI APIs
|
||||||
- Allow service principals to use read-only Power BI admin APIs
|
- Allow service principals to use read-only Power BI admin APIs
|
||||||
- Enhance admin APIs responses with detailed metadata
|
- Enhance admin APIs responses with detailed metadata
|
||||||
|
|
||||||
### Step 2: Provide necessary API permissions to the app
|
### Step 2: Create the App in Azure AD
|
||||||
|
Please follow the steps mentioned [here](https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal) for setting up the Azure AD application service principle.
|
||||||
|
|
||||||
|
### Step 3: Provide necessary API permissions to the Azure AD app
|
||||||
Go to the `Azure Ad app registrations` page, select your app and add the dashboard permissions to the app for PowerBI service and grant admin consent for the same:
|
Go to the `Azure Ad app registrations` page, select your app and add the dashboard permissions to the app for PowerBI service and grant admin consent for the same:
|
||||||
|
|
||||||
The required permissions are:
|
The required permissions are:
|
||||||
@ -52,16 +80,20 @@ The required permissions are:
|
|||||||
Optional Permissions: (Without granting these permissions, the dataset information cannot be retrieved and the datamodel and lineage processing will be skipped)
|
Optional Permissions: (Without granting these permissions, the dataset information cannot be retrieved and the datamodel and lineage processing will be skipped)
|
||||||
- `Dataset.Read.All`
|
- `Dataset.Read.All`
|
||||||
|
|
||||||
{% note %}
|
{% note noteType="Warning" %}
|
||||||
|
|
||||||
Make sure that in the API permissions section **Tenant** related permissions are not being given to the app
|
Make sure that in the API permissions section **Tenant** related permissions are not being given to the app
|
||||||
Please refer [here](https://stackoverflow.com/questions/71001110/power-bi-rest-api-requests-not-authorizing-as-expected) for detailed explanation
|
Please refer [here](https://stackoverflow.com/questions/71001110/power-bi-rest-api-requests-not-authorizing-as-expected) for detailed explanation
|
||||||
|
|
||||||
|
{% /note noteType="Warning" %}
|
||||||
{% /note %}
|
{% /note %}
|
||||||
|
|
||||||
### Step 3: Create New PowerBI workspace
|
### Step 4: PowerBI Workspaces
|
||||||
The service principal only works with [new workspaces](https://docs.microsoft.com/en-us/power-bi/collaborate-share/service-create-the-new-workspaces).
|
The service principal does not take into account the default user workspaces e.g `My Workspace`.
|
||||||
[For reference](https://community.powerbi.com/t5/Service/Error-while-executing-Get-dataset-call-quot-API-is-not/m-p/912360#M85711)
|
|
||||||
|
Create new workspaces in PowerBI by following the document [here](https://docs.microsoft.com/en-us/power-bi/collaborate-share/service-create-the-new-workspaces)
|
||||||
|
|
||||||
|
For reference here is a [thread](https://community.powerbi.com/t5/Service/Error-while-executing-Get-dataset-call-quot-API-is-not/m-p/912360#M85711) referring to the same
|
||||||
|
|
||||||
### Python Requirements
|
### Python Requirements
|
||||||
|
|
||||||
@ -178,24 +210,11 @@ By default, the pagination limit is set to 100 records, which is also the maximu
|
|||||||
**Use Admin APIs**:
|
**Use Admin APIs**:
|
||||||
|
|
||||||
Option for using the PowerBI admin APIs:
|
Option for using the PowerBI admin APIs:
|
||||||
|
|
||||||
|
Refer to the section [here](/connectors/dashboard/powerbi#powerbi-admin-and-nonadmin-apis) to get more information.
|
||||||
|
|
||||||
- Enabled (Use PowerBI Admin APIs)
|
- Enabled (Use PowerBI Admin APIs)
|
||||||
Using the admin APIs will fetch the dashboard and chart metadata from all the workspaces available in the PowerBI instance.
|
|
||||||
|
|
||||||
{% note %}
|
|
||||||
|
|
||||||
When using the PowerBI Admin APIs there are no limitations on the Datasets that are retrieved for creating lineage information.
|
|
||||||
|
|
||||||
{% /note %}
|
|
||||||
|
|
||||||
- Disabled (Use Non-Admin PowerBI APIs)
|
- Disabled (Use Non-Admin PowerBI APIs)
|
||||||
Using the non-admin APIs will only fetch the dashboard and chart metadata from the workspaces that have the security group of the service principal assigned to them.
|
|
||||||
|
|
||||||
{% note %}
|
|
||||||
|
|
||||||
When using the PowerBI Non-Admin APIs, the lineage information can only be generated if the dataset is a [Push Dataset](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets).
|
|
||||||
For more information please visit the PowerBI official documentation [here](https://learn.microsoft.com/en-us/rest/api/power-bi/push-datasets/datasets-get-tables#limitations).
|
|
||||||
|
|
||||||
{% /note %}
|
|
||||||
|
|
||||||
{% /codeInfo %}
|
{% /codeInfo %}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user