Data Modeling (Star Schema 🌟) in Power BI - Creating Dimension Tables

Поділитися
Вставка
  • Опубліковано 5 чер 2024
  • In this video we discuss the definition of a data model and focus our exploration around the Star Schema. We break down the specifics of what makes a Star Schema model and take a closer look at Fact tables and Dimension tables. At the end we walk through an example of creating a dimension table to help model efficiency!
    If you enjoy this video or any of my other videos and are interested in formal training on DAX, Power BI, Power Apps, Azure, or other Microsoft products you can use my code "Manuel30" to get an extra of 30% off at check out when purchasing our On-Demand Learning classes from pragmaticworks.com/pricing/ #ManuelQuintana
    -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - - - - - - - - - -
    Next step on your journey:
    👉 On-Demand Learning - Start With The FREE Community Plan: tinyurl.com/2ujujsb5
    🔗Pragmatic Works On-Demand Learning Packages: pragmaticworks.com/pricing/
    🔗Pragmatic Works Boot Camps: pragmaticworks.com/boot-camps/
    🔗Pragmatic Works Hackathons: pragmaticworks.com/private-tr...
    🔗Pragmatic Works Virtual Mentoring: pragmaticworks.com/virtual-me...
    🔗Pragmatic Works Enterprise Private Training: pragmaticworks.com/private-tr...
    🔗Pragmatic Works Blog: blog.pragmaticworks.com/

    Let's connect:
    ✔️Twitter: / pragmaticworks
    ✔️Facebook: / pragmaticworks
    ✔️Instagram: / pragmatic.works
    ✔️LinkedIn: / pragmaticworks
    ✔️UA-cam: / pragmaticworks
    Pragmatic Works
    7175 Hwy 17, Suite 2 Fleming Island, FL 32003
    Phone: (904) 638-5743
    Email: training@pragmaticworks.com
    ~-~~-~~~-~~-~
    Please watch: "(275) Free Pragmatic Works Power Apps Component Library "
    • Free Power Apps Compon...
    ~-~~-~~~-~~-~

КОМЕНТАРІ • 177

  • @awarrentfa
    @awarrentfa Рік тому +31

    I have watched so many videos about the star schema concept, but this is the very first video I've seen to actually walk me through how to actually normalize a denormalized table of data. THANK YOU, Manuel. I feel like I finally get it now!

    • @PragmaticWorks
      @PragmaticWorks  Рік тому +1

      Awesome, thank you!

    • @glengarner4566
      @glengarner4566 11 місяців тому +1

      Agreed, this was a great video to share with my new Power BI expert-in-training. It's always been the one concept that I feel like is criminally underexplained, either ignoring it entirely, talking too high-level, or assuming you already know how to do it. And other guides use DAX which... is not what you're supposed to do when you're building the starting model. Useful to visualizing the idea, but not for practically doing it. This Power Query-based video is perfect.

  • @Ryiah87
    @Ryiah87 2 роки тому +4

    First time I've seen query merging. It's really efficient. Thanks!

  • @devun1248
    @devun1248 2 роки тому +2

    Short, Clear, Precise.
    You are awesome! Keep it up

  • @yutianwanggg
    @yutianwanggg Рік тому +11

    This is extremely helpful! Thank you so much for making such a good interpretation of how data schema works in PowerBI!

  • @ethanlecuona5557
    @ethanlecuona5557 2 роки тому +21

    You're really good at explaining! Thank you for being so awesome!

  • @nazirkulovbotir6491
    @nazirkulovbotir6491 Рік тому +1

    You are a lifesaver. This is essential for building DWH from scratch. Thank you.

  • @kkpw12
    @kkpw12 4 місяці тому

    this is I love. Actual example and not just slide show of pictures and theory.

  • @nolann2763
    @nolann2763 2 роки тому +1

    You are a great teacher. Taking the complex and making it simple is a great trait to have.

  • @mauriceprice4211
    @mauriceprice4211 Рік тому +6

    Hey Manuel, thanks for making a mystery into something that I can use today! If only all tutorials were this straight forward to understand. Nice work!

  • @Avenger24601
    @Avenger24601 2 роки тому

    Manuel, this was so useful. Thank you! I like how you present.

  • @akshaykalamkar304
    @akshaykalamkar304 2 роки тому

    OMG, this is the topic I am searching from 10 days. very well expalained

  • @yolanizitumane4993
    @yolanizitumane4993 2 роки тому

    One of the best PowerBi videos on UA-cam. Thanks Sir.

  • @carltonpatterson5539
    @carltonpatterson5539 2 роки тому +2

    Absolutely excellent talk ... truly well delivered. I love the passion

  • @ifyluv7402
    @ifyluv7402 Рік тому

    I was confused because the basic star schema tutorials weren't giving me what I want but this video just solved my problem. Thank you

  • @jerrychen8715
    @jerrychen8715 Рік тому

    That's amazing video that getting me thru the basic of the data schema, short but very precise.

  • @joseluisbeltramone599
    @joseluisbeltramone599 2 роки тому +1

    Awesome video, Manuel. Thank you very much for sharing your knowledge!

  • @BrettGroneman
    @BrettGroneman 2 роки тому +1

    Fantastic job teaching this. Super helpful for me trying to figure out this tool.

  • @jessicaperez3746
    @jessicaperez3746 Рік тому +1

    This is amazing, was able to apply immediately and get a better more efficient product. Thanks!

  • @eligorniak9699
    @eligorniak9699 10 місяців тому

    Amazing explanation! Thank you!

  • @mosesakwagiobe4438
    @mosesakwagiobe4438 Рік тому

    great video, well explained and straight to the point.

  • @robertomarra2431
    @robertomarra2431 8 місяців тому

    Amazing job Manuel, really appreciate it

  • @stevieboyProductions
    @stevieboyProductions Рік тому +1

    Great video, I've definitely learned something today. Thank you for this tutorial, I'll be looking to implement this going forward

  • @naojamg
    @naojamg 2 роки тому +1

    this video is a masterpiece!! thank you very much 🤓

  • @shoboyjr
    @shoboyjr Місяць тому +1

    This is really good! Thank you very much!

  • @4nyone
    @4nyone Рік тому +1

    Really nicely explained, this is going to help me clean up my messy models for sure.

  • @tahirhanif9669
    @tahirhanif9669 8 місяців тому

    Excellent presentation, thank you

  • @mirelatamaokigiraldini9989
    @mirelatamaokigiraldini9989 Рік тому +1

    Excellent video! Thank you so much for this Manuel, just subscribed because of this video. Thanks a lot!

  • @TraceyOsbornHR
    @TraceyOsbornHR 2 роки тому +1

    Excellent information!! Thank you!!!

  • @olusolaokuboyejo7291
    @olusolaokuboyejo7291 Рік тому +1

    Thanks so much for making this topic easy to understand.

  • @marceljohnson5783
    @marceljohnson5783 16 днів тому

    Simple effective, thank you so much.

  • @BikerDad40
    @BikerDad40 2 роки тому +1

    Excellent video, explained very well Start schema and normalizing table, very knowledgeable video. Great job!

    • @PragmaticWorks
      @PragmaticWorks  2 роки тому

      Than kyou for your kind words! Glad you enjoyed it.

  • @bensix6496
    @bensix6496 2 роки тому +1

    Man that was a very good video, very visual and nicely explained not too much info so I could relate and think about my own problematics and how it ties at the same time.. you have a new subscriber!!

  • @mantasgustas1352
    @mantasgustas1352 Рік тому

    one of the best one I seen so far

  • @adrianfuhrer5832
    @adrianfuhrer5832 6 місяців тому

    Perfect! Thanks!

  • @kidssongs6542
    @kidssongs6542 2 роки тому

    Thank you so much!, truly helpful!

  • @richardgavatin2592
    @richardgavatin2592 Рік тому

    Excellent - thanks!

  • @fennecfennec5234
    @fennecfennec5234 2 роки тому +1

    brilliant demonstration Thank you so much

  • @ae7786
    @ae7786 Рік тому +1

    Great video Manual. This information is going to help me tremendously! 😀

  • @muftau7
    @muftau7 2 роки тому +1

    Very good explanation

  • @ahsanali50
    @ahsanali50 Рік тому +1

    Awesome Work Sir !! Thank you for the value provided . Subscribed !! ☺️

  • @RenataOliveira-dw1vl
    @RenataOliveira-dw1vl 2 роки тому +1

    Very helpful! Thanks a lot.

  • @advent7324
    @advent7324 2 роки тому +1

    Great Video Manuel, and logic really well explained. :)

  • @EllaXu-ge7hf
    @EllaXu-ge7hf Місяць тому

    Thank you so much for this Dim in PowerBI

  • @rahulrd2713
    @rahulrd2713 2 роки тому +1

    very clear and informative. thanks

  • @GiaiPhapXP
    @GiaiPhapXP 2 роки тому +1

    Great! Thanks.

  • @shawnebrown
    @shawnebrown 2 роки тому

    Fantastic video. Thank you. Would be very interested in knowing what you were going to do with the Geo Dim.

  • @iamthemoss
    @iamthemoss 11 місяців тому

    Good job, great explanation.

  • @ramielhag2284
    @ramielhag2284 Рік тому +1

    Perfect!! Thanks

  • @AbadllahDeBourgogne
    @AbadllahDeBourgogne Рік тому

    Great tutotial, very instructive.

  • @Cebuanoontwowheels
    @Cebuanoontwowheels 2 роки тому +1

    Thank you very much sir!!!

  • @parastoomousavi8847
    @parastoomousavi8847 Рік тому

    perfect. thanks

  • @ItsWithinYou
    @ItsWithinYou 2 роки тому +1

    Awesome!

  • @lilpandacub
    @lilpandacub 2 роки тому +1

    Learned so much

  • @paulobuenobruno3423
    @paulobuenobruno3423 7 місяців тому

    Great video, thanks!

  • @rachelrdh5671
    @rachelrdh5671 6 місяців тому

    AMAZING tutorial

  • @barryjorden1145
    @barryjorden1145 2 роки тому +1

    Excellent video!

  • @chandrasekhar1883
    @chandrasekhar1883 Рік тому +1

    Powerful explanation.💯

  • @baneledludlu7983
    @baneledludlu7983 Рік тому +1

    Thank you so much this is helpful

  • @mirdhapuneet
    @mirdhapuneet 2 роки тому +1

    superb

  • @Manojprapagar
    @Manojprapagar Рік тому +1

    Amazing video

  • @abduvosidmalikov
    @abduvosidmalikov Рік тому

    Thanks!

  • @simonnalleey7547
    @simonnalleey7547 2 роки тому +5

    Love your videos, informative and entertaining. Question though: if a new category were added to the data, wouldn't that potentially break the indexing that appears to be tied to the ascending sort step? And potentially shift all the index keys and royally mess up the data model? I guess I am unsure how the incremental index step works.

  • @aziiserak8863
    @aziiserak8863 2 роки тому +1

    well explained thx

  • @lpdowdell
    @lpdowdell 4 місяці тому

    I love Manuel!

  • @lukasjablonskas3712
    @lukasjablonskas3712 Рік тому

    Great video

  • @davidmanoraj6274
    @davidmanoraj6274 Рік тому +1

    Awesome 🎉 thanks

  • @jilalumustefa2276
    @jilalumustefa2276 Рік тому

    no comment only appreciated 100% for great JOB

  • @jayong2370
    @jayong2370 Рік тому

    That was great. Thank you.

  • @stevanmomcilovic4469
    @stevanmomcilovic4469 Рік тому +1

    Good explanation.

  • @fadwa2413
    @fadwa2413 2 роки тому +1

    perfect!!
    Thanks a lot
    Keep going Please

  • @Adin7785
    @Adin7785 2 роки тому +1

    Awesome! Great job explaining the value of normalized data.

  • @kevdo6333
    @kevdo6333 8 місяців тому

    Thanks dear

  • @shivappas8432
    @shivappas8432 Рік тому +1

    Thank You

  • @anitachacko8006
    @anitachacko8006 8 місяців тому

    Thank u❤

  • @mercydabbs3330
    @mercydabbs3330 2 роки тому +1

    Thank you!!!!

    • @PragmaticWorks
      @PragmaticWorks  2 роки тому

      You're welcome!

    • @mercydabbs3330
      @mercydabbs3330 2 роки тому

      @@PragmaticWorks I have a challenge of identifying the grain of a dataset, please where can I find your video on this?

  • @waltherziemerink
    @waltherziemerink Місяць тому

    Great video, however this aligns more with a traditional multidimensional model (snowflake). PowerBi is optimized to work with a tabular model which is more denormalized in nature. I think our response to introduce snowflake stems more from our bias towards DB design than dimensional modeling. Both will work though and you provided a great lecture

  • @babulthegreat4834
    @babulthegreat4834 Рік тому

    This was extremely helpful! Is this how I would tie in a date table, as well? Merge with the date table then delete the original columns? Thanks!

  • @francisjohn6638
    @francisjohn6638 Рік тому +1

    It's awesome

  • @RedCloudServices
    @RedCloudServices 3 місяці тому

    I wish Power BI could integrate with a GraphQL spec or something like it. Where the query is the model and no need to manage relationships. However love your video and thank you!

  • @oscarrosalescorzo
    @oscarrosalescorzo 2 роки тому +1

    Excelent

  • @juantray
    @juantray Рік тому +1

    Good stuff, bro! 🤌🏽

  • @gerryboie
    @gerryboie Рік тому

    Hey Manuel, thank you for making this video. One thing I would like to ask, if the star schema had been modelled in the database but the surrogate keys are not numeric as you would normally expect, can this be utilised directly in PowerBI or do we need to create unique IDs within PowerBI? Are there any performance issues using non-numeric surrogate keys?

  • @user-kr9wv4ex3g
    @user-kr9wv4ex3g 6 місяців тому

    Thanks for sharing the video. I was able to create a star schema with my data by following along. Do you have a video where you show how to use the star schema tables and create visuals with them? I am trying to recreate visuals I had made before star schema vs with star schema and my visuals are coming out very differently. Bar charts with data in x and y axis along with the legend. Thanks!

  • @norpriest521
    @norpriest521 Рік тому

    Thank you.
    Do you have video tutorial for a little more complex dimensional modeling where there are more than multiple fact tables and multiple dim tables?

    • @mubarbianalytics
      @mubarbianalytics Рік тому

      This is what I'm facing through now, please can you help with this tutorial?

  • @deniseortiz8567
    @deniseortiz8567 2 роки тому

    Hi thanks for the video! Great summary! At 12:09 for Denormalized Tables it lists "Best for increasing the spee of data search and analysis" on the slide but I interepret from what you are saying, the opposite. Can you exlplain the statement on slide a bit more please? Thank you!

  • @sunenielsen2686
    @sunenielsen2686 5 місяців тому

    Thank you! Very helpful video when beginning my Power BI adventure and want to apply good Power BI data models. However, one thing keeps me awake at night - - but I hope there is no reason for that other than my lack of knowledge - - well, the thing is, now that I have done all the normalisation in Power BI, data is organised very different from my starting point - - so will Power BI still be able to recognize the original data set from Excel that I will continue to use as a datasource, and what if I did make changes in my Excel datasourse - how should I apply these changes in Power BI If I eg added an extra column in my Excel model???

  • @ankitacs7
    @ankitacs7 2 роки тому +1

    Thanks for explaining! have a question, if a new category segment is added in the productdim table at the database level then how that will be reflected in the categorydim table which is created in power bi ?

    • @excelrati
      @excelrati 2 роки тому +1

      In this video, dimensions are created dynamically in each refresh based on the original sales table of sales.
      So, if the new category shows up in any sale, the new category will be picked up by the query that creates the dimension of categories.

  • @vsone9565
    @vsone9565 2 роки тому

    Great video!! Incredibly insightful and very practical explanation on how to create dimension tables.
    I'm trying to replicate the same but in this case it's requesting me to change from directquery to Import - is it expected to work from this mode?

    • @manuelquintana2225
      @manuelquintana2225 2 роки тому +2

      Yes, as working with a Direct Query connection does have limitations on what you can do within the power query editor. As soon as you go past those limitation you get the message that if you would like to continue you must switch to import. This same conversation we have in this video is what IT would have with the upstream data source and quite often this should be implemented at the source system when possible. Here we are just showing that it is possible

  • @ashutoshgadgil8407
    @ashutoshgadgil8407 10 місяців тому

    Hello, for anyone who has worked on data modelling; Can we apply similar steps when the scheduled update is switched on and all of Dimension tables needs to be created in in Business Client Project scenario, or Should we inform data engineering team to create these tables in backend?

  • @xMastJedi
    @xMastJedi 2 роки тому

    DIM tables. MOST Important part of data in model.

  • @dizzyharris2658
    @dizzyharris2658 2 роки тому

    Scenario Question: I'm pulling in data from a ITSM solution in which they use a 20 character alpha-numeric key for each validated attribute across all their tables. In most cases the Key has more characters than the text attribute. After watching this video, is it safe to say that I should just create my own keys, even though the fact and dim tables exist?

  • @janwillemvanholst
    @janwillemvanholst 2 роки тому

    In my view the most important argument for modelling (quoting Ferrari/Russo): 'if you fix the model, the formula becomes easy to author and understand'

  • @patrickbcox
    @patrickbcox 2 роки тому

    Thanks for sharing. I enjoyed your video. I do have a question. Is normalization really that important for a dimension table that will generally have relatively fewer record than your fact tables? And then I thought that adding the filter layers in a snowflake vs star schema can have a negative impact on model performance. What are your thoughts on this? Thanks again.

    • @dawidgrzeskow987
      @dawidgrzeskow987 2 роки тому

      Have in mind that you are on reporting side of the process, your goal is to provide easy to use and access report, do this changes affect the performence? Yes, they are, so if you see that your transformation is to costly you have to change your approach or push these changes on lower level (Data Warehouse). On the other hand what is the cost of looking just for performence? Well, have you ever had task to change huge report with not clear data model? If you didn't I'll tell you it's hell.

  • @tMub365
    @tMub365 2 роки тому +1

    So easy on the ears

  • @niranjanmakkuva4639
    @niranjanmakkuva4639 9 місяців тому

    How can i handle Upstream Schema changes cascading into PBI data model and report

  • @heobingo
    @heobingo 10 місяців тому

    What if more data need to be added into fact tables after creating index column in dimension table, merging and cleaning the fact table, how can some one remember all of those index key for each combination?

  • @JuanCarlosPradoRivas
    @JuanCarlosPradoRivas 2 місяці тому

    I have a big problem, my fact table has a weight of 24 megabytes and when I divide 2 dimension tables like city and position. I do the same procedure but now my fact table has a weight of 70 megabytes when it loads that happens due to the combination. When it is a small table it also happens but due to the small size it goes unnoticed, please help

  • @baadba1
    @baadba1 Рік тому

    I followed the exact same methodology using my own database (280k rows, 20 columns) and after having created some dimensions tables (in fact 3 including a « date » dimension table among other), power bi becomes very very slow. At each operation, it needs to go download in my « source data » an increasingly big volume of data (like 150mo whereas my source database is 25mo). Any idea why ?

  • @mattmatt245
    @mattmatt245 2 роки тому

    Could you give some examples of sql queries, which would be difficult to write against transnational (relational) database but are fairly easy with star schema ?

    • @manuelquintana2225
      @manuelquintana2225 2 роки тому +2

      Hello Matt,
      In this video we took the approach and idea of starting with a de-normalized flattened out table and seeing the benefits of moving to a star schema by normalizing the data into facts and dimensions. When talking about pulling data from OLTP DB you generally need to go the other direction and go through a process of de-normalization because generally you have multiple tables that contain attributes for a table that would ultimately be your dimension (e.g. various different tables that hold different attributes for customers that are important). Because you have various table that need to be brought together the common item which can degrade performance is having more and more join statements needed, this is how the SQL can become more complicated. Yours is a rather large question but hopefully my short answer helps

    • @mattmatt245
      @mattmatt245 2 роки тому

      @@manuelquintana2225 Do you know where I can find some examples of how it's done ?

  • @cavemanworld5019
    @cavemanworld5019 2 роки тому +1

    if you keep the product category inside the product table, the model is a perfect star schema. Is there any reason to normalise the product table in a kind of data warehouse?

    • @mcnater
      @mcnater 2 роки тому

      no there really isn't...no real need to snowflake in most cases.