The concept of semantic models of semantic models in Power BI is outstanding. It enables modular, reusable BI architecture — one that’s ideal for large organizations managing centralized logic across domains. One can layer semantic models and reuse business logic, reducing copy & paste solutions.
However, the current implementation using DirectQuery for Analysis Services (DQ for AS) is severely limited by what appears to be poor dependency management and lack of metadata caching.
🧨 Problems:
· Every minor change (e.g., renaming a measure) triggers full dependency validation across all connected models
· There seems to be no intelligent pruning of the dependency graph, or isolation of local changes
· Power BI Desktop becomes painfully slow and unresponsive — even for metadata-only edits
· UI locks up for minutes at a time with more than 3 connected semantic models
🛠Suggested Improvements:
· Implement incremental dependency tracking
· Use dependency tree isolation and pruning
· Enable asynchronous metadata validation
· Cache structural metadata locally to improve responsiveness
· Allow for deferred validation until publish/save
· Provide performance diagnostics for semantic model chaining
💡Workaround I Use:
· I now avoid DQ for AS entirely in upper layers, viz. I avoid implementing model of models in Power BI
· I create a consolidation database, fed by reused SQL feed queries from the source models
· I connect my overarching semantic model to the consolidation database via Import mode for speed
· I duplicate only essential DAX logic and tables, accepting minor redundancy to restore performance
· I use editors, such as Tabular Editor, or the built-in TMDL editor
✅Summary:
Semantic model of models (DQ for AS) is a powerful feature with huge enterprise potential — but its current performance makes it impractical at scale. Please invest in smarter architecture so we can embrace semantic modularity without such severe performance trade-offs.