The tabular model is relatively easy to understand and is used by a large group of developers vs. If the Power BI solution is mission critical and needs to be futureproof, plan to optimize the design in a later project phase and move to a more scalable approach as needed.Analysis Services in SQL Server 2012 can be either deployed in a multi-dimensional model for creating multi-dimensional and data mining projects or tabular model mode for creating a tabular/relational project (note: there is also a third option for PowerPivot for SharePoint as well). If you can’t manage that in the source database, data warehouse or data mart craft the fact and dimension tables in Power Query – and follow other best practices that will support extensibility ( see this series of posts). Having the perfect solution is great but having a working solution is better than having no solution at all.īottom line: creating a dimensional model should be your first order of priority. With all the time and money in the world, you can have all the features you want but constraining one, also constrains another. This is the classic balance of Time, Features and Money. Project evolution is often a progression from Good design to Better design and then, in cases where we have the luxury to do things right… on to Best design. So, you might as well do it right the first time. in my experience, nearly every “fit for purpose” report will eventually outgrow a flat query model when new requirements are added. But, if you evolve the new report to include time-series measures and modern visualizations like charts, slicers and drillthrough actions you will need (say it with me) – a dimensional model. The old report used a single SQL query, which might work just fine if you want to reproduce the old static report in Power BI. Maybe the old report just showed all of these columns in a long list of records displayed in the table visual. The essential design patterns are still the same.Īnother common argument for not following the dimensional rules is that the initial report requirements may not call for having the ability to slice or group by a certain column value that would normally be contained in a conformed dimension table. Other intermediate design choices might include using Power BI dataflows or datamarts – but the fundamental choice still remains: to shape the data before it lands in the Power BI solution or after. This may not be the most ideal solution if you need to import a large volume of data in a scalable solution, but it will help you get to a correct star schema data model and work-around the barrier. If the data source isn’t already organized into dimension and fact tables, you can reshape rows and columns into a star schema using Power Query using a series of transformation steps. Sure, data should be prepared and transformed upstream as far as possible, but when this isn’t possible (at least not in the first project iteration), move on to plan B and transform the data in another layer downstream. I hear new consultants say this all the time: “the customer made me do it that way”, but that’s not a good answer. The Data Engineer writes a big query and the BI developer shoe-horns a flat table into Power BI, citing that the customer made the decision not to follow best practice design. If they had the time, BI pattern skills and inclination to create a dimensional model, the customer/project sponsor probably wouldn’t be asking for expert help. This creates a dependency to define fact and dimension tables or views in the database. There are a few common scenarios that draw source data into different directions than an ideal dimensional model.Ī common scenario I have seen a number of times is when a new Power BI developer or consultant, attempting to follow best practices, comes to the conclusion that shaping data before it lands in Power BI would be the best bet they ask their client or Database Administrator or Data Engineer to take on the responsibility of shaping the data for them. I didn’t understand why getting to the star schema was so out of reach so often until I was able to see it from another perspective. So, if everyone agrees on this point, why do so many resist this advice? This is a hard fact that every expert promotes, and self-taught data analysts either have learned or will learn through experience. If you do any legitimate research about Power BI (reading blogs, books or training from reliable sources), you will quickly learn that a lot of basic functionality requires a dimensional model, aka “Star Schema”.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |