Forum Discussion

EBA38's avatar
EBA38
Regular Visitor
7 months ago
Solved

reload data after power query edit

Hi,
I have a dataflow that pulls its data from Azure SQL, then feeds my semantic model, and finally my report. When I download the PBIX, it is 900 MB with the data.

I open the PBIX in Power BI Desktop. I transform the data in Power Query, then I close Power Query. At that point I go back to Power BI Desktop, and a window opens to reload the table I just modified… and it takes a very long time (2hours...) until it eventually stops doing anything. Sometimes it loads 300 MB, sometimes 600 MB…

Is there a workaround for this issue?

Thank you very much.

  • Power BI Desktop is forced to fully re-materialize the table locally after any Power Query change, even if the data ultimately comes from a dataflow and even if you “just tweaked something small”.

     

    Best practice: Do NOT edit Power Query in the PBIX

    If the data comes from a dataflow:

    • Do all transformations in the dataflow
    • Keep the PBIX as thin as possible
    • Treat the PBIX as semantic + visuals only

9 Replies

  • Hi EBA38 

    This happens when we have import mode. When you edit Power Query, Power BI will fully reload for the transformed queries. So, you can do transformations in the dataflow or Azure SQL instead of Desktop. Also, we can replace DirectQuery mode or composite mode instead import and give a try.

  • Power BI Desktop is forced to fully re-materialize the table locally after any Power Query change, even if the data ultimately comes from a dataflow and even if you “just tweaked something small”.

     

    Best practice: Do NOT edit Power Query in the PBIX

    If the data comes from a dataflow:

    • Do all transformations in the dataflow
    • Keep the PBIX as thin as possible
    • Treat the PBIX as semantic + visuals only
  • This is a known but poorly explained Power BI behavior, and what you’re seeing is not a bug in your dataflow — it’s how Power BI Desktop handles large imported models.

    What is REALLY happening - ROOT CAUSE

    You have this chain:

    Azure SQL → Dataflow → Semantic model → PBIX

    When you:

    1. Download the PBIX (900 MB)

    2. Open it in Desktop

    3. Modify Power Query

    4. Click Close & Apply

    Power BI Desktop does ALL of the following again:

    Desktop does NOT reuse dataflow storage

    • It re-imports all data from the dataflow

    • It recompresses VertiPaq

    • It rebuilds dictionaries

    • It re-evaluates relationships

    • It recalculates calculated columns & tables

    Even if you changed one small step, the entire model reloads

    That’s why you see:

    • 300 MB… 600 MB… then stall

    • CPU + memory spike

    • No visible progress

    • Sometimes “finishes”, sometimes never

    BEST PRACTICE: Do NOT transform in the report PBIX

    Golden rule:
    Never do heavy Power Query transformations in a report connected to large dataflows.

    Correct architecture:

    • All transformations → Dataflow

    • PBIX → read-only import

    • Desktop only for:

      • Measures

      • Relationships

      • Visuals

    If you need a change:

    1. Modify the dataflow

    2. Refresh dataflow in Service

    3. Open PBIX

    4. Refresh model (much faster)

    This avoids re-materializing data locally.

    =================================================================
    Did I answer your question? Mark my post as a solution! This will help others on the forum!

    Appreciate your Kudos!!

    Jaywant Thorat | MCT | Data Analytics Coach
    Linkedin: https://www.linkedin.com/in/jaywantthorat/
    Join #MissionPowerBIBharat = https://shorturl.at/5ViW9
    #MissionPowerBIBharat
    Batch 2 - LIVE with Jaywant Thorat from 10 Jan 2026
    8 Days | 8 Sessions | 1 hr daily | 100% Free

  • AshokKunwar's avatar
    AshokKunwar
    Continued Contributor

    Hii EBA38 

    Here are the best workarounds to bypass the "2-hour reload" and get back to developing your report

    1. Use "Enable Load" to Work on Logic Only

    ​If you are only editing the logic (adding columns, filtering, etc.) and don't need the 900 MB of data locally while you work, you can "unhook" the table from the local model.

    1. ​Right-click your table in the Power Query (left pane).
    2. ​Uncheck "Enable Load".
    3. ​Click Close & Apply. Power BI will now only save the metadata/instructions. When you are ready to publish, check "Enable Load" again. Note: This will temporarily break visuals in Desktop, but it stops the 2-hour reload.

    2. Implement a "Development Filter" (The "Range" Trick)

    ​This is the most professional workaround. You create a parameter that limits the data while you are in Desktop, then remove the limit once it's in the Service.

    1. In Power Query, go to Manage Parameters > New.

    2. Create a parameter named IsDesktop (Type: True/False, Current Value: True).

    3. On your Fact table, add a filter step (e.g., Filter Date to the last 1 day).

    4. Edit the M-code of that filter step in the formula bar:

    = Table.SelectRows(Source, each if IsDesktop then [Date] > #date(2026, 1, 1) else true)

     

    Now, Power BI Desktop only loads a few MBs of data. When you publish to the Service, change the parameter to False to load the full 900 MB.

    3. Disable "Allow data preview to download in the background"

    ​Power BI Desktop tries to be helpful by downloading data in the background to show you previews. For a 900 MB file, this creates a massive bottleneck.

    1. ​Go to File > Options and settings > Options.
    2. ​Under Current File, go to Data Load.
    3. ​Under Background Data, select "Never allow data previews to download in the background".
    4. ​Clear your Cache in the Data Load settings under Global while you are there.

    4. Connect via the XMLA Endpoint (Large Models)

    ​Since you are using a 900 MB semantic model, you may have Power BI Premium (or Fabric). Instead of downloading the PBIX and reloading data, use Tabular Editor to connect via the XMLA endpoint. You can edit measures and metadata without ever having to "Reload" the data locally.

     

    If one of these methods helps you bypass the 2-hour loading screen, please mark this as the "Accepted Solution" to help others with large dataflow models!

     

    • EBA38's avatar
      EBA38
      Regular Visitor

      Hi, thanks for your message.
      in the 1.2 when I uncheck "Enable Load" I have a messsage : (I translate in English the message is in French) WARNING: POSSIBLE DATA LOSS
      Disabling load will remove the table from the report, and any visuals that use these columns will break.
      thanks

      • v-veshwara-msft's avatar
        v-veshwara-msft
        Community Support

        Hi EBA38 ,

        Thank you fro the update.

        The warning you are seeing when disabling Enable load is expected. In that state, Power BI removes the table from the local model, which is why visuals break. This option is mainly intended for intermediate or staging queries that support other transformations but are not meant to be part of the final model.
        Managing query refresh - Power BI | Microsoft Learn

         

        In your scenario, since the query represents a main table used by the semantic model and report visuals, disabling Enable load is not an ideal long term solution. While it can be used temporarily during development to avoid a full reload, it does not address the underlying behavior.

         

        As highlighted earlier by others in this thread, the recommended approach is to avoid Power Query edits in the PBIX for large Import models and instead apply transformations in the dataflow or at the Azure SQL source. Keeping the PBIX focused on the semantic model and visuals helps avoid repeated full re loads in Power BI Desktop.

         

        Hope this helps.
        Please reach out for further assistance.
        Thank you.

  • Hi EBA38 ,
    Just wanted to check if the responses provided were helpful. If further assistance is needed, please reach out.
    Thank you.

  • Hi EBA38 ,
    Just wanted to check if the responses provided were helpful. If further assistance is needed, please reach out.
    Thank you.

  • AshokKunwar's avatar
    AshokKunwar
    Continued Contributor

    Hii @EBA38 ,

     

    If one of these methods helps you bypass the 2-hour loading screen, please mark this as the "Accepted Solution" to help others with large dataflow models!