Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
Greetings!
Keeping Power BI Semantic models as thin as possible by not loading unnecesssary columns helps get the best performance and is also said to the best practice.
Consider the below Fact table.
FactSales
Should FactSaleSK be included in the Power BI semantic model? Or, should it not?
I tend to think that it should be omitted because I can't see a use of it.
Has this been explicitly discussed in the current best practices?
Greetings!
Keeping Power BI Semantic models as thin as possible by not loading unnecesssary columns helps get the best performance and is also said to the best practice.
Consider the below Fact table.
FactSales
Should FactSaleSK be included in the Power BI semantic model? Or, should it not?
I tend to think that it should be omitted because I can't see a use of it.
I am raising this question because it is the best practice in SQL Server for every table to have a clustered index.
Similarly, is there a best practice for Power BI semantic models to either to contain a unique SK or to remove it?
If it makes each fact row unique then it is a primary key.
Foreign Keys on a fact table should definitely be hidden, as they make no sense for reporting. Similarly the integer primary keys on all tables can be hidden as they have no business value. The story changes when your primary key has a business meaning (a date, or a product code). These should stay visible.
General guidance is that if you have multiple columns with the same name and meaning across downstream tables they should all be hidden in favor of the controlling dimension column.
@lbendlin ,
Hiding the columns reduces the clutter but it does not reduce the model size, because the hidden columns are still in the model taking up space.
The specific question I am asking is whether we should remove the Surrogate Key from the Fact Table, leaving the Fact table without a unique key. Surrogate Keys do not have business meanings, so this column will not be required by the business users.
I am raising this question because it is the best practice in SQL Server for every table to have a clustered index.
Similarly, is there a best practice for Power BI semantic models?
whether we should remove the Surrogate Key from the Fact Table, leaving the Fact table without a unique key
That would be a question for Vertipaq, but I would think that the answer is yes, as that column cannot be meaningfully compressed.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.
User | Count |
---|---|
104 | |
69 | |
49 | |
41 | |
34 |
User | Count |
---|---|
164 | |
111 | |
62 | |
53 | |
38 |