STAR SCHEMA ALL THE THINGS

The title says it all, but I’ll explain it anyway. When building a data model that will be used for analysis by human beings, always create a star schemas. Or multiple star schemas connected with conformed dimensions.

Why? Because it’s the most intuitive and user-friendly interface. Because remember, your data model is the user interface to your data. Don’t give your end users a normalized data model (too many joins, complex DAX) or a single flat table (looking at you Tableau. Performance issues, possible complex DAX and scaling issues). Give them a star schema.

You don’t have to take my word for it, but you can watch this awesome video by Patrick of Guy in a Cube where he explains why star schemas are essential in Power BI (and in extent any BI/reporting tool):

He gives a couple of reasons why star schemas are beneficial, and I added one extra in the comments:

If you want more information, definitely check out the book Analyzing Data with Power BI and Power Pivot for Excel by Russo and Ferrari. It dives deeper into the different aspects of why star schemas are preferred for Power BI and gives a lot of DAX examples. It’s a couple of years old, but since it deals with the basics of modelling it is still very relevant.

If you need more background on star schemas – or dimensional modelling – check out the books Star Schema The Complete Reference (one of my favorite technical books of all time) or The Data Warehouse Toolkit: The Definitive Guide to Dimensional Modeling by Kimball.

And remember:


------------------------------------------------
Do you like this blog post? You can thank me by buying me a beer 🙂

Koen Verbeeck

Koen Verbeeck is a Microsoft Business Intelligence consultant at AE, helping clients to get insight in their data. Koen has a comprehensive knowledge of the SQL Server BI stack, with a particular love for Integration Services. He's also a speaker at various conferences.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.