Before I start explaining the architecture, it is important to understand the challenge and think about how to solve it. The default usage of Power BI involves getting data imported into the Power BI data model and then visualizing it. Although there are other modes and other connection types, however, the import data is the most popular option. However, there are some challenges in a model and a PBIX file with everything in one file. Here are some;
– Multiple developers cannot work on one PBIX file at the same time. Multi-Developer issue.
– Integrating the single PBIX file with another application or dataset would be very hard. High Maintenance issue.
– All data transformations are happening inside the model, and the refresh time would be slower.
– The only way to expand visualization would be by adding pages to the model, and you will end up with hundreds of pages after some time.
– Every change, even a small change in the visualization, means deploying the entire model.
– Creating a separate Power BI file with some parts it referencing from this model would not be possible; as a result, you would need to make a lot of duplicates and high maintenance issues again.
– If you want to re-use some of the tables and calculations of this file in other files in the future, it won’t be easy to maintain when everything is in one file.
– And many other issues.
After laying out all of the challenges, Reza puts together a plan to resolve them.