Forum Discussion
Direct Lake Source Semantic Model Behind a Downstream Composite Model - Performance
Hi Everyone,
I'm designing an enterprise architecture in Microsoft Fabric and would like to validate the query execution behavior in a semantic model chaining scenario.
Architecture
Model A (Source Semantic Model)
- Built using Direct Lake on OneLake.
- Reads Delta tables directly from OneLake through Direct Lake.
Model B (Downstream Composite Model)
- Connects to Model A using DirectQuery for Power BI semantic models.
- Includes additional local Import tables.
Question
When a user queries Model B, part of the request is sent to Model A through the DirectQuery semantic model connection.
What I would like to confirm is:
- When Model A receives the request, does it continue to execute its portion of the query using its native Direct Lake storage mode and engine?
- In other words, are the Direct Lake performance characteristics preserved even when Model A is consumed by a downstream composite model?
- Or does the semantic model chaining layer introduce a different execution path that changes how Model A accesses and processes its underlying data?
I'm specifically trying to understand whether the source semantic model still benefits from Direct Lake's direct interaction with OneLake when queries originate from another semantic model rather than directly from a report.
Any clarification, architecture guidance, or documentation references would be greatly appreciated.
Thanks!
5 Replies
- MohamedFowzan1
Super User
Hi wolfee
Yes, Model A can still execute using its underlying Direct Lake storage mode. The fact that Model B connects to it through DirectQuery doesn't convert Model A into DirectQuery against OneLake.
The important distinction is that Model B adds another layer to the query path. Model B sends queries to Model A, and Model A then evaluates the relevant part using its own storage engine. So Direct Lake isn't lost, but the overall performance can still be different from querying Model A directly.
The biggest thing I'd watch is when you combine the remote tables from Model A with the local Import tables in Model B. Cross-source relationships/calculations can introduce additional query work and can become the performance bottleneck rather than Direct Lake itself.
Microsoft also documents this as semantic model chaining and notes that composite models can use DirectQuery connections to Power BI semantic models. There is also a maximum supported chain length of three.
So I'd think of it as: Report → Model B → DirectQuery → Model A → Direct Lake → OneLake
Model A can still benefit from Direct Lake, but you should benchmark the complete chain rather than assuming Model B will perform exactly like a report connected directly to Model A.
- Natarajan_M
Super User
Hi wolfee
Great question .
Here is my understanding:
1. The composite model B sends direct queries using DAX (not SQL) to model A, which means it does not affect the Direct Lake method used by model A.2. Yes, the characteristics will be preserved.
3. Model B cannot change how model A accesses data.
To clarify further, please create a sample model and test it with the specified scenarios.
Thanks,
Natarajan M - v-saisrao-msft
Community Support
Hi wolfee,
Have you had a chance to review the solution shared by Natarajan_M, MohamedFowzan1? If the issue persists, feel free to reply so we can help further.
Thank you. - ShahRukhSameer
Continued Contributor
Hi wolfee,
Yes, Model A is still Direct Lake in this setup. Using it from another semantic model doesn't change its storage mode.
The basic flow is:
Report → Model B → Model A → OneLake Composite Direct Lake
When Model B sends a query to Model A, Model A evaluates that part of the query using its own engine/storage mode. So it doesn't suddenly start querying OneLake as a normal DirectQuery source.
The bit I'd be careful about is performance. Although Model A can still get the benefits of Direct Lake, you're adding another semantic model and query layer. If a visual in Model B combines data from Model A with one of the local Import tables, there can be additional query coordination and data movement.
Also, Direct Lake can fall back to DirectQuery in certain situations, so "Model A is Direct Lake" doesn't necessarily mean every query will always be served directly from OneLake.
So I'd say the Direct Lake capability is preserved, but the end-to-end performance of Model B isn't necessarily the same as querying Model A directly.
For an enterprise design, I'd test the actual composite queries in Performance Analyzer/DAX Studio rather than assuming the performance will be identical.
- v-saisrao-msft
Community Support
Hi wolfee,
Checking in to see if your issue has been resolved. let us know if you still need any assistance.
Thank you.