Can't download all data from reports with table calculations or window measures

I want to add few columns and create a derived ‘total’ column in Looker ( something like total = col1 + col2).

I tried doing this through table calculations in the Look and also through a ‘running_total’ type measure in LookML. Both these approaches give me what I want.

However, when I need to download the entire data manually from the look or schedule an extract for the entire data through an email, I get the following error message

Error: Refusing to run query with no limit that Looker cannot stream incrementally. Please choose a smaller limit or remove table calculations.

Error: Refusing to run query with no limit that Looker cannot stream incrementally. Please choose a smaller limit or remove the "window" measure types (such as running_total) from the query

How can I let users download data from reports which have such derived columns? Please let me know if there is any other way I can accomplish this

Solved Solved
0 5 2,255
1 ACCEPTED SOLUTION

@Dawid there is indeed technical limitation - the ability to stream data in chunks. For example, table calculations never stream, running total is calculated similar way so they don’t stream as well. Some dialects don’t support pivots - then they are calculated in Looker, so they won’t stream neither. Check this article https://help.looker.com/hc/en-us/articles/360001285567-What-are-all-the-Row-Limits-in-Looker-

@Vinay2 you can try to move table calculation to the LookML, if that is possible. Like using measure of type: number for the arithmetical calculations over other measures, having dummy measures if you are adding values from dimensions being grouped  - like min(dimension_value) - will give you just one value like in your data tab in explore, but it will actually be a measure. They also can be hidden:yes so that they do not appear in the Field Picker and cause confusions.

View solution in original post

5 REPLIES 5

Indeed, in some cases downloading All Results is not possible, and table calculation is the most common of them.

You can see more of them here https://docs.looker.com/sharing-and-publishing/downloading#all_results

Instead, you should be able to use a Custom limit for downloading, specifying the limit of rows https://docs.looker.com/sharing-and-publishing/downloading#limits

Dawid
Participant V

But isn’t that the whole point of ALL RESULTS. It means ALL, no filters or limits. What are the technical limitations here that Looker returns an error?

@olga1 That is a little surprising to me since this is a fairly common use case. In my case, taking a look at partial data won’t make much sense for the users.

So the way I see it, the only solution is to move the table calculations to the data warehouse and consume the data directly from there?

@Dawid there is indeed technical limitation - the ability to stream data in chunks. For example, table calculations never stream, running total is calculated similar way so they don’t stream as well. Some dialects don’t support pivots - then they are calculated in Looker, so they won’t stream neither. Check this article https://help.looker.com/hc/en-us/articles/360001285567-What-are-all-the-Row-Limits-in-Looker-

@Vinay2 you can try to move table calculation to the LookML, if that is possible. Like using measure of type: number for the arithmetical calculations over other measures, having dummy measures if you are adding values from dimensions being grouped  - like min(dimension_value) - will give you just one value like in your data tab in explore, but it will actually be a measure. They also can be hidden:yes so that they do not appear in the Field Picker and cause confusions.

@olga1 Thank you for the advice! Measure of type: number worked for me in LookML and I was able to download all the data.

Top Labels in this Space
Top Solution Authors