Forum Discussion
How to optimize semantic model
- 7 months ago
Hi minhnhatdanchoi ,
Consider the GYC video as starter: Reframe your Power BI Direct Lake Semantic Model
and check the post as well
Solved: Re: How to do incremental refresh using datalake o... - Microsoft Fabric Community
If this response was helpful in any way, I’d gladly accept a 👍much like the joy of seeing a DAX measure work first time without needing another FILTER.
Please mark it as the correct solution. It helps other community members find their way faster (and saves them from another endless loop 🌀.
Environment & scale
Lakehouse: ~20 tables total.
Fact tables: 5 fact tables that receive new data daily.
Ingest rate: ~100,000 new rows per day (total across facts).
Historical size: tables contain data from July → each table ≈ 50 million rows.
Semantic models: using Direct Lake mode.
Dashboards: slicer/filter targets the most recent 1 month of data.
Capacity: currently on F4.
Your semantic model and visual queries are trying to use ~8.5 GB RAM, but F4 capacity allows ~3 GB per dataset/operation.
This typically happens with Direct Lake mode, especially when:
The model is not optimized (wide tables, large cardinality columns).
Visuals trigger complex or large DAX queries.
Multiple visuals load at once with large context filters