Quantcast
Channel: Table.Buffer for cashing intermediate query results or how workaround Unnecessary Queries Issue
Viewing all articles
Browse latest Browse all 21

Table.Buffer for cashing intermediate query results or how workaround Unnecessary Queries Issue

$
0
0

1. Chris, thanks a lot, "allow data preview to download in the background" feature was really helpful, the behavior of PQ changed dramatically, and now, if I change Q3, I'll just have 1 call for every step of Q1 .. Q3, which is perfect.

The behavior during Refresh of Q3 haven't changed, but, despite this is not logical, this is not a _stop_ factor for a little bit of complex ETL.

I don't understand why the behavior changed though, actually such behavior (with ""allow data preview to download in the background" turned ON) seems like a bug in a PQ. If not - it would be great to understand it's logic.

2. As for Buffer - I'm still not sure that I understand it's definition. As far as I understand from all the explanations and my experience - Buffer creates an immutable copy of a variable (even created from datasource), but only for the time of one evaluation, i.e. only during execution of operator like Q2 = some(Q1) where Q1 = Table.Buffer(datasource).Is it correct?

So for code below we'll have 2 call to datasource - 1 per each row, but without Bufferinstead of 1 call for row 2 we would have multiple calls to datasource.

Q1=Table.Buffer(datasource),
Q2 = Table.AddColumn(Source, "Q2", each Table.RowCount(Q1))

And still it would be great if we could do cashing of the results of the previous queries instead of calling the full stack of previous queries (even though it's 1 time per each) for every change we do in a Query.

Viewing all articles
Browse latest Browse all 21

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>