Forum Discussion
Possibility to Import Data from Semantic Model Without Triggering XMLA Read Operation
Dear Community,
I hope you're doing well.
I'd like to ask your perspective about pulling data from specific dataset/semantic model. Currently, I'd like to reuse the final numbers from specific semantic model. However, I realize that the method of importing data from semantic model using SSAS Connector can trigger XMLA Read Operation. The thing is, that XMLA Read Operation is the activity that kills PBI Capacity recently. Do you have any experience doing alternative way to get data automatically/seamlessly from specific semantic model without triggering XMLA Read Operation? Any advice or input is appreciated.
Thank you for your support!
4 Replies
- v-csrikanthCommunity Support
Thank you for the detailed question.
A quick clarification: XMLA read operations are not inherently the cause of capacity issues. They are the mechanism the Analysis Services engine uses to serve semantic model queries. The actual capacity impact depends on model size, query complexity, concurrency, and your capacity SKU.
If you are reading data directly from a semantic model through the Analysis Services connector, "Connect to semantic model" in Power BI Desktop, Analyze in Excel, DAX Studio, or the REST executeQueries API the request is ultimately served by the Analysis Services engine, so some query workload against the model is unavoidable.
To reuse the final numbers while minimizing load on the semantic model, the common patterns are:
-
Read from the upstream source (Lakehouse, Warehouse, SQL, source system) instead of the semantic model.
-
Materialize the required outputs into a Lakehouse/Warehouse/dataflow table as part of your existing ETL, and consume that table downstream.
-
Use Dataflows (Gen1 or Gen2) built on the same source to produce reusable output tables.
Before redesigning, use the Microsoft Fabric Capacity Metrics app to confirm whether XMLA/interactive queries are actually the main CU driver, versus refreshes or other background operations.
If the logic exists only as DAX measures in the semantic model, you'll either need to recreate it upstream, or keep querying the model and focus on optimizing the model/DAX and controlling query frequency.
References:
-
Semantic model connectivity (XMLA endpoint): https://learn.microsoft.com/fabric/enterprise/powerbi/service-premium-connect-tools
-
Monitor Fabric capacity: https://learn.microsoft.com/fabric/enterprise/metrics-app
-
Dataflows overview: https://learn.microsoft.com/power-bi/transform-model/dataflows/dataflows-introduction-self-service
Thanks,
C Srikanth
Community Support Team
-
- audreygerredSuper User
Hi! If you do not need the same granularity in model B for this final number as you do in model A (which is what it sounds like), I suggest creating another table/view in your gold layer that takes care of this aggregation and then importing that into model B.
- v-csrikanthCommunity Support
We would like to inquire whether have you got the chance to check the solutions provided by audreygerred in community to resolve the issue. We hope the information provided helps to clear the query. Should you have any further queries, kindly feel free to contact the Microsoft Fabric community.
Thank you,
C Srikanth
Community Support Team - v-csrikanthCommunity Support
We wanted to follow up and check whether you had a chance to review our previous response and if the issue has been resolved.
If you are still experiencing the issue or have any additional questions, please feel free to share an update. We’ll be happy to assist further.