Forum Discussion
Historical Data Load in Power BI
I am getting 6 months data from Teradata as initial load.The data volume is around 1.7B and direct query is out of equation as we are mainly getting this data to have Q&A visual on top of it. Q&A only supports Import mode. I can't aggregate the data as well because the requirement is to have data at most granular level
Ofcourse 6months data as a single load is failing due to gateway out of memory issue
So is there a way I could split this into 6 mini batches (1 per month) and load the data batch by batch
I tried Incremental refresh with the following config
My data batches are below
| Start Date | End Date | |
| Batch A | 23/04/2024 | 22/05/2024 |
| Batch B | 23/05/2024 | 21/06/2024 |
| Batch C | 22/06/2024 | 21/07/2024 |
| Batch D | 22/07/2024 | 20/08/2024 |
| Batch E | 21/08/2024 | 19/09/2024 |
| Batch F | 20/09/2024 | 19/10/2024 |
The problem with the above configuration is the first batch will be successful and the next one doesn't because as per the config the only data after 19/10 is getting loaded. I also want to remove the data older than 6 months
Hopefully I have clearly explained the problem, if not happy to clarify
Could you please guide me to resolve the problem ? Can I achieve this with Incremental refresh or Is there any other better method
Appreciate your insights
Thanks and Regards,
PR
2 Replies
- divyed
Super User
Hello PowerRanger03 ,
Splitting data into multiple batches is a good idea for loading large dataset. Have you tried running multiple queries to hanle this something like below :
1. Create a Query with Date Filter:
SELECT *
FROM your_table
WHERE date_column BETWEEN '2024-01-01' AND '2024-01-31'2. Duplicate the Query for Each Month :
duplicate above query for each month changing date range like
WHERE date_column BETWEEN '2024-01-01' AND '2024-01-31' -- for Jan
WHERE date_column BETWEEN '2024-02-01' AND '2024-02-29' -- for Feb etc
3. Load Each Batch Separately:
Once the queries are set up, you can refresh each batch one by one. This reduces the memory load on the
gateway, as each batch will be smaller in size. You can disable parallel loading from setting to ensure a
single batch is running.
4. Combine Queries:
Once all the queries are loaded, you can combine them into a single table using Append Queries in Power
BI to create a single dataset
You can change date range as per your need.
I hope this helps.
Did I answer your query , if yes please mark this as solution. You can say special thank you by giving Kudos
Cheers
- AnonymousNot applicable
Hi PowerRanger03 ,
Would you be concerned that the initial incremental refresh might time out due to the large volume of data?If so, I think this link will help you a lot:
Advanced incremental refresh - Prevent timeouts on initial full refresh
Best Regards,
Bof