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

Compete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.

Reply
Rinn
Frequent Visitor

Slow data loading time on PBI with Bigquery GCP

Hello,

 

I created a Power BI report using BigQuery as the data source in import mode, and I published it on my company's Power BI Services. I find that the refresh time for the semantic model is very long.

In my case, I use a table with 30 million rows and 40 columns (no Power Query transformation steps), and it takes more than 5 hours to refresh the data, whether it's on Desktop or online.

I would like to hear your feedback and know how long it takes on your side to refresh data and how many rows you're working with, in order to know if there is an issue with PBI Services in my company.

 

Best Regards.

2 ACCEPTED SOLUTIONS

If you set the year to a datetime, say the first day of the year, then you can use incremental refresh. Then only need to load all once, and just this year for every other refresh 


Did I answer your question?
Please help by clicking the thumbs up button and mark my post as a solution!

View solution in original post

v-kpoloju-msft
Community Support
Community Support

Hi @Rinn,
Thank you for reaching out to the Microsoft fabric community forum. Thank you @rohit1991@Deku, for your inputs on this issue.

Thank you for providing the details. Working with large datasets like yours (30M rows × 40 columns) in Power BI Import mode with Big Query can indeed present performance issues.

Since the refresh is taking over 5 hours on both Desktop and in the Power BI Service, the problem is likely due to the volume of data being retrieved and the way Big Query handles full table scans during each refresh.

Use Views in Big Query: Create a SQL view that filters or pre-aggregates your data to reduce the volume imported into Power BI.

Implement Incremental Refresh: This is especially effective for large datasets. It allows Power BI to only refresh new or changed data rather than pulling the entire dataset each time. You'll need a date/timestamp column and to configure RangeStart/RangeEnd parameters.
Incremental refresh for semantic models in Power BI - Power BI | Microsoft Learn
Configure incremental refresh for Power BI semantic models - Power BI | Microsoft Learn

Big Query Table Optimization:

  • Use partitioned tables (on date fields).
  • Use clustered tables to speed up query filtering.
  • Avoid SELECT * – only import necessary columns.

Review Network and Gateway Performance (if applicable): If you're using an on-premises gateway, ensure it’s up to date and hosted on a high-performance machine.

vkpolojumsft_0-1744608781659.png

Kindly refer to the below link for better understanding:
Google BigQuery connector - Power Query | Microsoft Learn
Data refresh in Power BI - Power BI | Microsoft Learn

If this post helps, then please give us ‘Kudos’ and consider Accept it as a solution to help the other members find it more quickly.

Thank you for using Microsoft Community Forum.



View solution in original post

8 REPLIES 8
v-kpoloju-msft
Community Support
Community Support

Hi @Rinn,
Thank you for reaching out to the Microsoft fabric community forum. Thank you @rohit1991@Deku, for your inputs on this issue.

Thank you for providing the details. Working with large datasets like yours (30M rows × 40 columns) in Power BI Import mode with Big Query can indeed present performance issues.

Since the refresh is taking over 5 hours on both Desktop and in the Power BI Service, the problem is likely due to the volume of data being retrieved and the way Big Query handles full table scans during each refresh.

Use Views in Big Query: Create a SQL view that filters or pre-aggregates your data to reduce the volume imported into Power BI.

Implement Incremental Refresh: This is especially effective for large datasets. It allows Power BI to only refresh new or changed data rather than pulling the entire dataset each time. You'll need a date/timestamp column and to configure RangeStart/RangeEnd parameters.
Incremental refresh for semantic models in Power BI - Power BI | Microsoft Learn
Configure incremental refresh for Power BI semantic models - Power BI | Microsoft Learn

Big Query Table Optimization:

  • Use partitioned tables (on date fields).
  • Use clustered tables to speed up query filtering.
  • Avoid SELECT * – only import necessary columns.

Review Network and Gateway Performance (if applicable): If you're using an on-premises gateway, ensure it’s up to date and hosted on a high-performance machine.

vkpolojumsft_0-1744608781659.png

Kindly refer to the below link for better understanding:
Google BigQuery connector - Power Query | Microsoft Learn
Data refresh in Power BI - Power BI | Microsoft Learn

If this post helps, then please give us ‘Kudos’ and consider Accept it as a solution to help the other members find it more quickly.

Thank you for using Microsoft Community Forum.



Hi @Rinn,

 

May I ask if you have resolved this issue? If so, please mark the helpful reply and accept it as the solution. This will be helpful for other community members who have similar problems to solve it faster.

 

Thank you.

Hi @Rinn,


I wanted to check if you had the opportunity to review the information provided. Please feel free to contact us if you have any further questions. If my response has addressed your query, please accept it as a solution and give a 'Kudos' so other members can easily find it.


Thank you.

Hi @Rinn,


I hope this information is helpful. Please let me know if you have any further questions or if you'd like to discuss this further. If this answers your question, please Accept it as a solution and give it a 'Kudos' so others can find it easily.


Thank you.

rohit1991
Super User
Super User

Hi @Rinn ,
Thanks for sharing your experience. Refreshing a dataset of 30 million rows and 40 columns from BigQuery in import mode taking over 5 hours does seem unusually long, especially given that there are no Power Query transformations involved.

 

While refresh times can vary based on network latency, gateway performance, and BigQuery's response time, such a delay might point to a bottleneck in one of these areas. In general, others working with similar volumes (tens of millions of rows) often see refresh times ranging from 30 minutes to 2 hours, depending on optimization. You might want to check if your gateway is up to date and whether any throttling or regional restrictions are impacting performance. 

 

Also, consider partitioning or aggregating data in BigQuery before loading into Power BI, or using DirectQuery for better control over performance. Reaching out to others for benchmark comparisons is a great idea, but you might also want to monitor query performance directly within BigQuery to pinpoint where the delays are occurring.


Did it work? ✔ Give a Kudo • Mark as Solution – help others too!
Deku
Super User
Super User

That does seem slow. Can you use incremental refresh so partitons load in parallel. There are likely some settings you can make in big query to improve. If you have fabric you can mirror the data to help as well 


Did I answer your question?
Please help by clicking the thumbs up button and mark my post as a solution!
Rinn
Frequent Visitor

Thanks for your reply, 

About the incremental refresh, my table does not have any historical data, it's some kind of modelization and I have to reload entirely for each refresh, however, it contains a year column, can i still do that ?

If you set the year to a datetime, say the first day of the year, then you can use incremental refresh. Then only need to load all once, and just this year for every other refresh 


Did I answer your question?
Please help by clicking the thumbs up button and mark my post as a solution!

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

Check out the August 2025 Power BI update to learn about new features.

August 2025 community update carousel

Fabric Community Update - August 2025

Find out what's new and trending in the Fabric community.