link64
link64

Reputation: 1976

PowerBI Query Performance

I have a PowerBI report that has a few different pages display different visuals. The report uses the same table of data (lets call it Jobs).

The previous author of this report has created two queries in the data section that read off this base table of data, but apply different transformations and filters to the underlying data. Then, the visuals use either of these models to display their data. For example, the first one applies a filter to exclude certain columns based off a status field and the other applies a different filter, and performs transformations on some of the columns

When I manually refresh the report, it looks like the report is retrieving data for both of these queries, even though the base data is the same. Since the dataset is quite large, I am worried that this report has been built inefficiently but I am not sure if there is a better way of doing this.

TL;DR; The Source and Navigation of both of queries is exactly the same - is this retrieving the data twice and causing my report to be inefficient, and if so, what is the approrpiate way to achieve what I am trying to do?

Upvotes: 1

Views: 54

Answers (1)

Giovanni Luisotto
Giovanni Luisotto

Reputation: 1400

PowerBi will try to parallelize as much as possible. If you have two queries that read from the same table then two queries will be executed.

To avoid this you can:

  1. create a query which only gets the necessary data from the table.
  2. Set this table not to be loaded in the model (toggle "Enable Load")
  3. Every other table that starts from this table won't be a clone of this but will reference it.

In this way, the data will be fetched once from the source and then used to create other tables using PowerQuery.

Upvotes: 2

Related Questions