Forum Discussion
Developing the Power BI environment (Semantic models, data models and datasets)
- 1 year ago
Semantic model, or model for short, is pretty much interchangeable with dataset. In Power BI they used to be called datasets but Microsoft changed the name mid last year. All the articles and videos which pre-date that will refer to datasets.
It is a good idea to have multiple reports running off one centralised semantic model, as opposed to having multiple models, as you can keep all your business logic etc in one place, which eases maintenance. It also allows you to reuse dimensions across multiple fact tables. This is probably most commonly beneficial in terms of a date table. Create a proper date table, marked as a date table, and then you can link that to any other tables in the model, allowing you to compare metrics based on different fact tables in the same visual. There's lots of articles and videos about creating a date table.
As far as creating reports based on the semantic model, when you create a new report you can choose Power BI Semantic Model as an option in the Get Data dialog. That will give you a list of semantic models in the Power BI service, and you just choose the appropriate one.
Thanks for this. Based on what you write, I tried a 'Get Data' with a Semantic Model (which was the data used in a report I'd built), which brings in all the tables, columns and measures, but it only allows me do 1 of those 'Get Data' commands. I'd thought of bringing in several of these and combining them into a single model, but thats not an option. I also notice that there isnt the capability to use the 'Transform Data' on the Semantic Model, or to view the data. So its very gear at just perusing the model.
In order to build the overall model then, its better to bring in the various datasets, combine them, and that creates an overll Semantic Model?
Yes, exactly so. Build one master model with all your individual tables, measures etc, and then build the reports off that.
- Walt10101 year agoHelper V
OK I'll do that. My environment is pretty small, but wouldn't it be good to also move that model "upstream" ie load the files into a landing place in a database, sort out all the basics there and then feed from there into Power BI for the reporting?
- johnt751 year agoSuper User
If you can do that then yes, but its not strictly necessary. If you can perform the transformations you need in Power Query then it might be OK to leave them there. It may take a little longer to load the data into the model, but that doesn't really matter as that time is not seen by the end user, it only happens during data refresh.
On the other hand, if you have your data in a database then it is available to other programs and applications as well.
You'll need to weigh up whether its worth the effort to create and maintain pipelines into a DB as opposed to doing it all in Power BI.
- Walt10101 year agoHelper V
Thanks. Yes its definitely overkill at the moment, but it has certain advantages.