Forum Discussion

Kfausch's avatar
Kfausch
Helper II
3 years ago
Solved

Appending To Large Static Data Set

Hello,

 

I am trying to reduce refresh times in my report by splitting historical data from current, only refreshing current data, and then appending both datasets. This has reduced the refresh time from 3.5 hours to 2 hours, but I think I am missing something. This is how I have it setup.

 

Table 1:

ILE (Current) – only data from 2023
• Enable Load – enabled
• Include in report refresh – enabled

• 300MB of data


Table 2:
ILE (History) – data from 2018-2022
• Enable Load – disabled
• Include in report refresh – disabled

• 8.7GB of data

Table 3:
Item Ledger Entry – Table 1 and Table 2 appended
Source = Table.Combine({#"ILE (History)", #"ILE (Current)"})

• Enable Load – enabled
• Include in report refresh – enabled
• 9GB of data

Table 2 is static historical data so I have disabled the refresh, but what I am seeing is that Table 3 still takes a long time to load. If I just want to append a small dataset that refreshes to a large static table, should I be doing something differently? It seems like Table 3 is still loading/parsing all of the data. I was hoping in doing this, I would only need to wait for table 1 to refresh which takes 20-30 minutes.

 

Thanks in advance for any suggestions.

Kevin

  •  Hi Kfausch 

     

    I think what you have done till step 2 is correct. Then try using Append on table 2 where enable load should be enabled (this refers to your table that would be visible in the model or not). Just come to table 2 with Refresh disabled (static data) and then do append table 1 to this table. I believe it should work.

    Also, you can avoid this by using incremental refresh as well, where probably you can store the whole data and then just refresh the latest data (1-10 days to months, quarters or years as per your requirement).

     

     

5 Replies

  •  Hi Kfausch 

     

    I think what you have done till step 2 is correct. Then try using Append on table 2 where enable load should be enabled (this refers to your table that would be visible in the model or not). Just come to table 2 with Refresh disabled (static data) and then do append table 1 to this table. I believe it should work.

    Also, you can avoid this by using incremental refresh as well, where probably you can store the whole data and then just refresh the latest data (1-10 days to months, quarters or years as per your requirement).

     

     

    • Kfausch's avatar
      Kfausch
      Helper II

      Appending the current data to the history table did reduce the refresh time further. Thanks for your recommendation!

       

      Kevin

      • Anonymous's avatar
        Anonymous
        Not applicable

        Kfausch  How did you load data to Table 2 and publish it if its size is 8.7 GB?

        I have a similar issue, however my historical data is too big to load and then publish to Power BI Service. I need to use XMLA endpoints to load the data using SQL Serve Management Studios Analysis Services connection.... which requires the table to be loaded before I publish it in order for me to access it via XMLA endpoints ( am I mistaken?).

        I do not know how to disable the load of a table using XMLA endpoints or other tools, or if its even possible, so I now have a historical table that's loaded ... but only used for appending with current data which is not ideal.

        Please let me know if you have any advice Kfausch , and any input you have AnkitKukreja  would be welcome as well.

         

  • katushka_enko's avatar
    katushka_enko
    Frequent Visitor

    Hey Kfausch ! I wonder how you managed to resolve this problem. I have the same issue, and this approach doesn't work for me, as the table doesn't refresh at all and doesn't get data from Table 1 (Current?).

  • gvlado's avatar
    gvlado
    Advocate III

    I have been wrestling with old and new (fresh) data for some time now. I refresh the data for the last year every day, and I want the previous ones to be static tables (not to be refreshed daily).
    So far, I have a pro license and am not in a Fabbric environment, I have discovered two ways.
    #1 One is using DAX UNION with the fact that for previous years I have turned off refresh for those queries (include in report refresh) - it will be automatically refreshed the first time.
    #2 The second is using Dataflow (Gen1) which does not refresh except the first time.

    It's probably different in Fabric, but fabric is very expensive, but we'll get to that.