In this article, we’ll discuss the benefits of using Power BI dataflows.
One of the most common drawbacks of self-service BI implementation is the duplication of data preparation work and inconsistencies across an enterprise. Historically, centralized corporate BI departments handled these issues. With more companies moving toward self-service BI, the capacity of existing IT professionals may be stretched. Or they can be slow to react to new requirements. This is where dataflows come into play.
What are Power BI dataflows?
Basically, a dataflow is a Power Query process that takes place in the cloud independently from Power BI reports. The dataflow process has the same data preparation functionalities, source connectors and transformation options as the regular Power Query. This means everyone, who knows how to build reports in the Power BI Desktop, can start using dataflows.
When building Power BI reports, we often thought about a possibility of using one table (for example, the date or geography tables) in multiple reports. This could have saved us a lot of time.
With dataflows this becomes possible. The biggest advantage of dataflows is re-usability of data. You can create a dataflow once and then re-use it again and share with others across a company. The author, for example, kept a separate file with M scripts to copy the code between different datasets. This is now in the past.
Other advantages of dataflows
Just like Power Query, dataflows is a low-code data preparation solution. Knowing the M code is certainly advantageous; however, you don’t need to write a single line of code to transform data. Those who use Excel have been familiar with Power Query for many years.
Power BI dataflows can work with large amounts of data. In the age of big data and advanced analytics this is a must have.
Another interesting thing about dataflows is that users don’t need the Power BI Desktop to create a dataflow. Since the process runs independently in the cloud, you can do data preparation in the Power BI service.
Lastly, with the dataflows users can set different refresh times for different tables. A good example is when you schedule a daily refresh for your sales table, but then set a monthly refresh for products.