Understanding the Semantic Model Module of the Fabric Custom Web App


This blog is focused on the Semantic Model Module of the custom Fabric Web application that I am working on.
For any given data solutions architecture, semantic model is a crucial component and Microsoft Fabric is no exception. Semantic model defines the meaning and relationships of data elements of underlying data model.
The custom Semantic model module that I have built in the web application enhances the user experience by making semantic model more understandable and exposing the underlying minute details of every element of the semantic model. The module provides a centralized environment and is a one stop solution to understand the underlying meaning and structure of the semantic model.
If you would like to skip the read up , you can instead watch the video walkthrough of the module here.
Semantic Model Menu
Selecting the semantic model menu option opens a specialized interface where users can view details of semantic definitions, relationships and hierarchies.
The landing page lists down all the semantic models existing in the tenant in a tree structure format.
The listing displays different properties of the semantic model namely
Model : TMSL
Model : TMDL
Model : Properties and relationships
Tables : No Of Regular Columns
Tables : No Of Calculated Columns
Tables : Type (Regular/Calculated)
Tables : Hidden property
Tables : Storage mode
Tables : TMDL
Column : Datatype and hidden property
Calculated Column : Expressions
Calculated Table : Expressions
TMSL option : Clicking the TMSL option, displays the TMSL of the selected semantic model in a tree structure. The TMSL details are displayed in a new window.
TMDL option: Clicking the TMDL option, displays the TMDL of semantic model in a new window.
View Properties Option: Clicking the View Properties option of the semantic model displays the relationships across different elements of the entities of the semantic model in a block chart.
Report Option:
Clicking the report name displays additional report properties in a new pop up window.
Clicking the View Report Details option, displays al the underlying items in the report
with item details for each individual page of the report.
Clicking the View Actual Report option, displays the report in a new window in the application.
Table Option:
Clicking the TMDL option against a table, displays the TMDL of the table in a new window.
Clicking the table name in the listing displays the column details of the underlying table.
Hovering over the table name of a Calculated table
displays the expression that was used to create the calculated table.
Similarly clicking the calculated table name displays the column details of the table.
Filters
Filter option is provided in the listing across all columns.
The screenshot below displays the filter option for No Of RegularColumns column.
Semantic model for a specific workspace can also be accessed from the Dashboard page as well.
Clicking the value in Semantic Models column pops up the semantic model details for that specific workspace.
Semantic Analytics
This page displays the underlying metric details of the semantic model
Select the workspace and the semantic model in the workspace.
Once the semantic model is selected, the following details of the semantic models are listed.
Expanding the table name, drilldowns the column level details of the table.
The same details can be viewed in a graphical format in the form of bar chart by selecting the second tab in the page.
The bar chart displays the count of items in a workspace while the pie chart in the left bottom displays the Table sizes in the semantic model in terms of percentage. The pie chart on the right displays the table row count of the semantic model in terms of percentage.
Drilling down the bar chart displays the column details of the table like the column size percent and the column row count percent of the table.
To view the Model size , click the model size button on the top right.
Video Walkthrough
Final thoughts
I have tried my best to include as many details as possible of semantic models in this module. Hopefully, by leveraging this module the user can gain a deeper understanding of the underlying components in the semantic model which will help in making more informed decisions and optimizing the model there by ensuring efficient data processing. The goal of this module is to ensure that users can effectively navigate and get a holistic view of the semantic models.
Another feature that could potentially be implemented is the ability to export various components of the semantic model.
Do let me know what do you think about the module and any additional feature that you would like to see in this module.
Thanks for reading !!!
Subscribe to my newsletter
Read articles from Sachin Nandanwar directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
