Forum Discussion

mim's avatar
mim
Advocate V
6 years ago
Solved

Control which query go to BigQuery

I am connecting to Bigquery, all good, but for some reason everytime PowerBI send two queries instead of one for example.   select x,y from dd LIMIT 1000 OFFSET 0 select x,y from dd   how I stop...
  • tonmcg's avatar
    6 years ago

    The short answer is: you cannot. The longer answer is: you can set configurations in Power BI and develop your queries in a way that increase the likelihood that your data source API is only called once.

     

    The reason is that Power Query's persistent cache takes some time to load the data from an initial query. Unfortunately, other queries that rely on the results of that query may set off their own separate processes before the persistent cache is finished storing the data. This exceprt from Chris Webb's blog explains what's happening:

     

    Power Query’s persistent cache (which stores data on disk during a particular refresh) is updated via a background thread. And separate evaluations (i.e. separate Microsoft.Mashup.Container.*.exe processes) running at the same time are not coordinated; when evaluation A is accessing the persistent cache (including updating it), this doesn’t block evaluation B from accessing the cache. This means that even when using a shared persistent cache, PQ can potentially end up requesting the same data twice. It depends on the timing of the various requests.

     

    Read the whole post to understand more:

    https://blog.crossjoin.co.uk/2019/03/26/power-bi-caching-parallelism-and-power-query-refresh-performance/