Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
aviha12
Frequent Visitor

Incremental Refresh with Appended Web Source

Hey everyone,

I'm stuck with this problem and hoping someone has dealt with it before.

I have 3 large fact tables that I need to set up incremental refresh on. The catch is that each table needs to be appended with data from a web source before loading to the model (the 3 large table from SQL server have the information up to today, and the 3 tables from the web source have the information of today).

Here's my situation basically:

  • Main 3 Fact tables from SQL Server (supports query folding)
  • 3 tables from a web source that I need to append to each of the main Fact tables (no query folding)
  • I need the final combined tables to have incremental refresh

The problem is that Power BI requires the RangeStart/RangeEnd filter in the final query to enable incremental refresh. But since one source is from the web, it still downloads ALL the data every time even though I'm filtering at the end.

I've tried filtering both sources before appending, but the web source doesn't support query folding so it still pulls everything.
When I tried doing it only on the model with the 3 Fact tables from SQL Server, it worked, but I must append them with the Web tables.

Is there any way to make incremental refresh actually work in this scenario? Or do I need to rethink my approach entirely?

Thanks in advance!

2 ACCEPTED SOLUTIONS
v-venuppu
Community Support
Community Support

Hi @aviha12 ,

Thank you for reaching out to Microsoft Fabric Community.

Thank you @GilbertQ @lbendlin for the prompt response.

To make incremental refresh work when appending SQL + non-folding Web data, separate the queries.Apply incremental refresh only on the SQL fact tables (they fold). Load the Web tables separately as small “today-only” datasets without incremental refresh.Then create a final table that simply UNIONs/APPENDs the SQL incremental table with the Web table.The incremental partitions are created from the SQL source, and the Web data is small enough to load fully each refresh.This pattern avoids breaking query folding and is the Microsoft-recommended approach for combining folding + non-folding sources.

 

View solution in original post

That's something you would need to do in code, for example via EXCEPT. Having duplicated data across partitions is very highly undesirable.

View solution in original post

9 REPLIES 9
v-venuppu
Community Support
Community Support

Hi @aviha12 ,

May I ask if you have resolved this issue? Please let us know if you have any further issues, we are happy to help.

Thank you.

v-venuppu
Community Support
Community Support

Hi @aviha12 ,

Thank you for reaching out to Microsoft Fabric Community.

Thank you @lbendlin @GilbertQ for the prompt response.

I wanted to check if you had the opportunity to review the information provided and resolve the issue..?Please let us know if you need any further assistance.We are happy to help.

Thank you.

v-venuppu
Community Support
Community Support

Hi @aviha12 ,

Thank you for reaching out to Microsoft Fabric Community.

Thank you @GilbertQ @lbendlin for the prompt response.

To make incremental refresh work when appending SQL + non-folding Web data, separate the queries.Apply incremental refresh only on the SQL fact tables (they fold). Load the Web tables separately as small “today-only” datasets without incremental refresh.Then create a final table that simply UNIONs/APPENDs the SQL incremental table with the Web table.The incremental partitions are created from the SQL source, and the Web data is small enough to load fully each refresh.This pattern avoids breaking query folding and is the Microsoft-recommended approach for combining folding + non-folding sources.

 

Thank you,

Will there be a way to delete duplicates on the final table?
Because in the Web table I also get rows that exist in the SQL table, but their status or whatever was updated. so if there is an ID that exist in both table, by remove duplicates it removes for me the one in the SQL table because of the order that the tables are appended, is it possible to do it in your solution?
And also, many of the columns that exist in the SQL table does NOT exist in the WEB table, will it still work?


Thanks!

That's something you would need to do in code, for example via EXCEPT. Having duplicated data across partitions is very highly undesirable.

GilbertQ
Super User
Super User

Hi @aviha12 

 

One alternative approach I would think of is if you have the incremental refresh being applied to your SQL table that will always then incrementally refresh the data and then in the subsequent steps just append your web source. That should work fine because your web source is always getting all the data, but automatically first apply the incremental refresh and then append the data.





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!







Power BI Blog

But incremental refresh is being done in the DAX level. so I can't do it.

lbendlin
Super User
Super User

each table needs to be appended with data from a web source before loading to the model 

Does that web source have a filter option?

Regardless, since it doesn't fold you will not get any performance improvements with incremental refresh.

 

Rethink your approach entirely.  Push both the web data and the SQL Server data into CSV Zip archives on a Sharepoint. Use the file names to define the partition boundaries.  Even though this doesn't fold it is still fast enough as the network transfer penalty is reduced.

I can't do it since the data is oragnizational data.

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.