This is the second post in the blog series summarising my experience with Power BI from the real-world projects.
- Things Better to Know Before Implementing Power BI Service
- Pain Points of Power BI
- Things Better to Do When Working with Power BI
This blog post covers some very interesting topics, namely the pain points of Power BI that has driven me crazy.
- No cross-page slicer
This looks like a small issue but causes very bad user experience. A Power BI report often contains multiple pages covering various categories of metrics. Power BI slicers are used in the pages to filter content based on various dimensions, e.g., BUs, departments and machine models. As the slicers on one page cannot pass the filtering context to other pages, users must repeat all the slicer settings again when they move to another page.
- No report-level measure for SSAS Multi-Dimensional model live connection
Report-level measure is only supported for SSAS tabular model live connection but not for SSAS multi-dimensional model live connection. That would cause much pain when you need to design Power BI reports with live connection to an on-production SSAS multi-dimensional cube. It is very common that you need to create additional measures to build a certain type of charts. Without report-level measure, you will have to update the SSAS multi-dimensional cube and go through all deployment and change management procedures in your organisation that may takes a few months.
- No migration from SSAS tabular model to Power BI
Power BI, SSAS tabular model and PowerPivot are brother as they share same analytics engine and query language. It is a handy feature that you can migrate you Power BI data model into SSAS tabular model. However, I did meet a requirement to migrate SSAS tabular model to Power BI that is not supported, and I must recreate the SSAS tabular model in Power BI.
- No fine-grain permission
The permission model offered by Power BI is very simple and is too simple. There is no fine-grain permission level. When you give a report author the permission to build a dashboard in an app workspace, at the same time, the report author will be able to publish app, edit dataset settings, modify all other content in the app workspace.
- Limitation of Power BI real-timing streaming
One of coolest feature of Power BI is the streaming dataset that allows dynamical change of metrics in a Power BI chart. However, this feature is only supported on Power BI dashboard (not on Power BI reports), and the limitations of Power BI streaming dataset with data ingestion rate and streaming dataset size prevent it to be used in many real-world use cases (further explanations of this issue can be found in previous blog post: Issues with Azure Streaming Analytics + Power BI Real-Time Streaming for IoT Hot-Path Analytics).
- Role-level security is not supported for external sharing
It is common requirement to distribute Power BI reports to external customers or vendors with personalised content access, i.e. one customer or vendor can only access the data related to them. Role-level security is required for this requirement. However, role-level security is not supported for external sharing, so game over!
- No support of incremental refreshing
At the time when this blog post is written, there is no support for incremental dataset refreshing. Without incremental refreshing, Power BI service must reload the full dataset and reprocess entire tabular model. Fortunately, this feature is on Microsoft roadmap and is expected to release this year but is only for premium license.
- Cannot move content between app workspace
We often need to move content between app workspace, e.g., from DEV app workspace to UAT app workspace. However, Power BI does not support this feature yet, so we must employ some workaround to this limitation, either to use content pack or through Power BI Desktop republishing (the Power BI Desktop republishing cannot move dashboards created in an app workspace)