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
powerbiexpert22
Impactful Individual
Impactful Individual

large data volume

how do i perform development by importing tables that has larger data volume (millions of records in fact table and dimension tables having around 100K records)?

2 ACCEPTED SOLUTIONS
Ritaf1983
Super User
Super User

Hi @powerbiexpert22 

When developing in Power BI with large datasets, including fact tables with millions of records and dimension tables with around 100K records, it's crucial to manage performance and resource usage efficiently. Here are several strategies you can employ:

1. Use DirectQuery Mode

  • DirectQuery allows you to work with large datasets without importing the data into Power BI. Instead, queries are sent directly to the data source whenever the report is used.
  • This mode can be useful for development if you want to avoid loading large amounts of data into memory. However, be mindful that it can lead to performance issues if your data source or queries are slow.

2. Use Import Mode with Incremental Refresh

  • Import mode is generally faster than DirectQuery for report performance, but it loads the entire dataset into memory.
  • Incremental Refresh can help manage large datasets by only loading and refreshing parts of the data that have changed or are new, reducing the volume of data that needs to be processed during refreshes.

3. Development with a Sample Dataset

  • Consider creating a sample dataset with a representative subset of your data. This allows for faster development and testing.
  • Once the report is built and optimized with the sample data, you can switch to the full dataset for final testing and deployment.

4. Aggregations

  • Aggregation tables can significantly improve performance by summarizing data at a higher level and reducing the volume of data that needs to be processed for queries.
  • Use aggregation tables in conjunction with DirectQuery for detailed data exploration as needed.

5. Partitioning

  • If using a data warehouse or database that supports it, consider partitioning your large tables. This can improve query performance and make your data loads more efficient.
  • Power BI can handle partitions well, especially when combined with Incremental Refresh.

6. Optimize DAX Calculations and Model Design

  • Ensure your data model is optimized, with well-designed relationships and DAX calculations.
  • Avoid using complex measures that require scanning millions of records whenever possible; instead, pre-aggregate data if feasible.

7. Manage Data Loading (Query Folding)

  • Use Query Folding in Power Query to push as much processing as possible back to the data source. This reduces the load on Power BI and improves performance.
  • Ensure that your transformations in Power Query are compatible with query folding to optimize performance.

    If this post helps, then please consider Accepting it as the solution to help the other members find it more quickly

Regards,
Rita Fainshtein | Microsoft MVP
https://www.linkedin.com/in/rita-fainshtein/
Blog : https://www.madeiradata.com/profile/ritaf/profile

View solution in original post

Brunner_BI
Super User
Super User

I would add to remove all unused columns to optimize your model.

------------------------------------
Brunner BI focusing on Microsoft Power BI development and consulting
Developers of external tool "Measure Killer"
My blog

View solution in original post

2 REPLIES 2
Brunner_BI
Super User
Super User

I would add to remove all unused columns to optimize your model.

------------------------------------
Brunner BI focusing on Microsoft Power BI development and consulting
Developers of external tool "Measure Killer"
My blog
Ritaf1983
Super User
Super User

Hi @powerbiexpert22 

When developing in Power BI with large datasets, including fact tables with millions of records and dimension tables with around 100K records, it's crucial to manage performance and resource usage efficiently. Here are several strategies you can employ:

1. Use DirectQuery Mode

  • DirectQuery allows you to work with large datasets without importing the data into Power BI. Instead, queries are sent directly to the data source whenever the report is used.
  • This mode can be useful for development if you want to avoid loading large amounts of data into memory. However, be mindful that it can lead to performance issues if your data source or queries are slow.

2. Use Import Mode with Incremental Refresh

  • Import mode is generally faster than DirectQuery for report performance, but it loads the entire dataset into memory.
  • Incremental Refresh can help manage large datasets by only loading and refreshing parts of the data that have changed or are new, reducing the volume of data that needs to be processed during refreshes.

3. Development with a Sample Dataset

  • Consider creating a sample dataset with a representative subset of your data. This allows for faster development and testing.
  • Once the report is built and optimized with the sample data, you can switch to the full dataset for final testing and deployment.

4. Aggregations

  • Aggregation tables can significantly improve performance by summarizing data at a higher level and reducing the volume of data that needs to be processed for queries.
  • Use aggregation tables in conjunction with DirectQuery for detailed data exploration as needed.

5. Partitioning

  • If using a data warehouse or database that supports it, consider partitioning your large tables. This can improve query performance and make your data loads more efficient.
  • Power BI can handle partitions well, especially when combined with Incremental Refresh.

6. Optimize DAX Calculations and Model Design

  • Ensure your data model is optimized, with well-designed relationships and DAX calculations.
  • Avoid using complex measures that require scanning millions of records whenever possible; instead, pre-aggregate data if feasible.

7. Manage Data Loading (Query Folding)

  • Use Query Folding in Power Query to push as much processing as possible back to the data source. This reduces the load on Power BI and improves performance.
  • Ensure that your transformations in Power Query are compatible with query folding to optimize performance.

    If this post helps, then please consider Accepting it as the solution to help the other members find it more quickly

Regards,
Rita Fainshtein | Microsoft MVP
https://www.linkedin.com/in/rita-fainshtein/
Blog : https://www.madeiradata.com/profile/ritaf/profile

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!

November Power BI Update Carousel

Power BI Monthly Update - November 2025

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

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.