Комментарии •

  • @EricaDyson
    @EricaDyson 3 года назад +32

    Can't thank you enough for 1) your knowledge 2) the way you share your knowledge 3)the clarity. Your talent and humility are both amazing!

  • @Daervion
    @Daervion 2 года назад +6

    Man, that was impressive from start to end.
    I'm starting to get into Data Analysis and trying to get also on Data Science and this content is crystal clear.
    Thanks for the content!

  • @bogkraven
    @bogkraven 3 года назад +8

    Just started the video and already know that it is going to be a good one! Your work is of astonishing value!

  • @nicemacey
    @nicemacey 3 года назад +5

    Another great video. My approach has always been to create calculated columns in Power Query so that they're available to use in PQ transformations, which isn't the case with DAX calculated columns.

  • @questionsformedb8157
    @questionsformedb8157 3 года назад +2

    I will say obvious, they are the best DAX teachers on the planet who has significant positive influence on career of many people. Microsoft is very lucky to have them, they uncover the power of the tool.

  • @nburaq
    @nburaq 2 года назад +1

    This is the best explanation I have ever seen so far! Clean, simple and satisfying.Thanks a lot

  • @DJ_Q
    @DJ_Q 2 года назад +2

    I literally almost spit my breakfast out when you said "That's the end of section 1" 😂
    Great video as usual

  • @beckham7rick
    @beckham7rick 3 года назад +2

    Haha I loved section 1 Alberto. Grazie mille per tutti questi video. Ho imparato tantissimo da voi!

  • @maeshakib9646
    @maeshakib9646 3 года назад +1

    Very good tutorials. From your Very deep level discussion everyone will be benefited. Thank you Alberto Ferrari. Respect & ❤️ from Bangladesh.

  • @jeffweir9358
    @jeffweir9358 3 года назад +3

    Great explanation. I guess an advantage of using PQ over DAX in this instance is that more of your 'like' logic (i.e. data modelling) is in one place.

  • @philipmarno4989
    @philipmarno4989 3 года назад +1

    This was a great insight into DAX and model management. Have subscribed and will be back for more. Many thanks from Scotland.

  • @LasherSan
    @LasherSan 2 года назад +1

    This was a legitimately interesting video, with a clear explanation. Thanks.

  • @timewithsopy
    @timewithsopy Год назад +1

    Thank you for sharing your knowledge. Which method is best on performance?

    • @SQLBI
      @SQLBI Год назад +1

      It depends!

  • @questionsformedb8157
    @questionsformedb8157 3 года назад +5

    I have 25M records view to pulls into SSAS on prim model from Oracle cloud database Unfortunately, I don't have ability to create materialized table from the view however I can modify the view on the server.. I had three options to create columns:
    1) create additional columns in SQL view - it's probably best practice, however due to complex logic it's much easier to do it in Power Query.
    2) create additional columns in Power Query - I created columns but solution started to fail. I suspect this happens because Power Query tries to use folding on top of already complex view on top of cross cloud data pull. it either timed out or Oracle database choked running the view due to not enough resources.
    3) create additional columns in the model itself using DAX - I had no problem doing it even though they have to recalculate every time on update of single partition (there are 3 now).
    In my case I used DAX calculated columns as a method of load distribution between Oracle Database with not enough resources to execute entire view and Analysis Services Database as the last step in creating complete view.
    In other case, I had to create calculated column based on logic required two tables coming from different clouds. Power Query did join operations extremely slow with cross cloud data on 25 mln records while DAX engine even didn't blink an eye.
    So the answer IT DEPENDS... :) there could be hundreds of reasons to determine one option over other. In general, my order is SQL, Power Query, DAX but it's not always possible for one reason or other and I have to deviate from general order.

  • @NoShadowOfDoubt1
    @NoShadowOfDoubt1 3 года назад +2

    Thank you ... my dax is 10 times better with your videos!

  • @alfredsfutterkiste7534
    @alfredsfutterkiste7534 3 года назад +1

    Super interesting point about the partitions that I never considered. Im glad I watched this video

  • @Bharath_PBI
    @Bharath_PBI 3 года назад

    Yes, but 1 place where we can not use calc column in DAX is when we want to base that column as a sort by column , as it creates circular dependency.
    First part of the video was really quick and was expecting it. Happy to hear talking about large models.
    Yes sir, we're there with you till the end of the video. Why DAX studio numbers are off at 15:00 ? Even I have faced it sometimes, especially after resizing the columns.

    • @SQLBI
      @SQLBI 3 года назад

      It depends on how you create the calc column, circular dependency is not guaranteed, it depends...

    • @Bharath_PBI
      @Bharath_PBI 3 года назад +1

      @@SQLBI Yes.👍

  • @adrianomelo3825
    @adrianomelo3825 3 года назад +1

    Incredible, thanks for your great collaboration, a big hug from Brazil

  • @juanmiguelvinuelagarcia7509
    @juanmiguelvinuelagarcia7509 2 года назад +1

    I am really amazed about your explanations and outcome, so I can foresee some changes on some of my models. However, does it have an impact in the model the fact the "Price Range" calculated column through Power Query was defined not as a "Text"(ABC) rather than a non defined field (ABC-123)?
    Thanks again, learning from you is always great!

  • @bkundrat
    @bkundrat 3 года назад +1

    Soooooo helpful! Thank you Alberto. This answered my question in the exact detail I needed.

  • @kadirkkkk
    @kadirkkkk 2 года назад +1

    I was so curious about that subject and happy to see you with it 🙂 but i was also curious about query perfomans. Yes you told that there will not be a big differance cause of model size but it would be good to see in the means of seconds

    • @SQLBI
      @SQLBI 2 года назад +1

      The difference, if any, would not be measurable. It is way below the margin of error of the clock used to gather the timings. Only in some veeeery borderline scenarios there might be a difference, due to compression.

  • @4AlexeyR
    @4AlexeyR 3 года назад +1

    Thank you for the explanation of the subject. I have a question. Is there a method how to optimize a model in case of hidded optimization logic of the PowerBI DB engine?

  • @sue_bayes
    @sue_bayes 3 года назад +1

    Thank you, enjoyed the reasoning behind using the different methods.

  • @scramiro1
    @scramiro1 3 года назад +2

    Nice one, very funny. I laughed when you said "That's the end of section 1" and then kept staring hahaha. You fooled us hahaha Nice!

  • @alexgry4763
    @alexgry4763 3 года назад +1

    Hello Alberto,
    there is a big one discussion in the company I work for. One part of the reporting team considers the usage of Power Query to be a bad practice. Their point of view, is that all the transformations and calculations, except for maybe some basic filtering, should happen in the data source itself (we base our reports on SQL Server databases). Another part is in favor of Power Query since it is extremely flexible and and allows to implement adjustments very fast.
    Which group has a better point? Is there an easy answer to this question?

    • @SQLBI
      @SQLBI 3 года назад +1

      As usual, no easy answers. But if you have a central data warehouse with all the transformations made there, it's wonderful.
      If you have to create a quick report combining data from different sources, Power Query is very handy.
      In the middle, it depends. But we think that both tools are useful in different scenarios.

    • @alexgry4763
      @alexgry4763 3 года назад +1

      @@SQLBI Thank you Alberto! Always looking forward to learn new things from your videos!

  • @felipesignorellireis7839
    @felipesignorellireis7839 3 года назад +2

    Amazing class..... You are "top" Alberto.

  • @billmanassas7746
    @billmanassas7746 3 года назад +1

    It would be interesting to show a fourth example of this calculated column in SQL. Although I realize that the point of this video is that it doesn't really matter.

  • @kukeleku13
    @kukeleku13 6 месяцев назад +1

    Very well explained. Thank you.

  • @HuyNg2603
    @HuyNg2603 3 года назад +1

    I love the way you explain this! I have 1 question: Is this the same for tables created by DAX and tables created in Power Query?

    • @SQLBI
      @SQLBI 3 года назад +3

      It's not the same. Calculated tables are compressed in an optimal way (opposed to calculated columns), but the price to pay is that the entire table must be materialized uncompressed in memory before the compression, so it could be memory-expensive. It could be a bad idea for large tables, requiring too much memory during the process.

  • @JaniZajc
    @JaniZajc 3 года назад +3

    I find one import aspect that you haven’t mentioned in this video, and it is the (very slow) speed of the PBI desktop when recalculating the model when you have several calculated columns in the model. I think we should vote an idea for manual recalc of the model in settings, what do you think?

  • @antoniogarrido3058
    @antoniogarrido3058 3 года назад +1

    Good and interesting question.. Complete and useful answer. I'll take it into account.. 1000 thanks!!

  • @ginger.schooling
    @ginger.schooling Год назад +1

    Very well explained, thank you!!!!!!!!

  • @aaronklingensmith159
    @aaronklingensmith159 2 года назад +1

    Great video--incredibly helpful and informative.

  • @pmsocho
    @pmsocho 3 года назад +1

    Great video and chess in the background! :)

  • @BernatAgulloRosello
    @BernatAgulloRosello 3 года назад +2

    I like to think of power query for data cleaning stuff and dax for analysis purposes. Splitting into two columns? Power query. Price range? Dax. Great video as usual!

  • @tacijjola
    @tacijjola Год назад +1

    Thank you. Great video, as always.

  • @brunof.s.8186
    @brunof.s.8186 3 года назад +1

    this is a truly MASTERPIECE

  • @joseaguilera3243
    @joseaguilera3243 2 года назад +1

    Thanks so much! Great video

  • @lydialim1993
    @lydialim1993 3 года назад

    Very informative! I have a question Mr Ferrari sir, how do you come to learn about this "sorting" functions that happen during data load? Are you in contact with the PBI developers directly?

    • @SQLBI
      @SQLBI 3 года назад +1

      This is how the VertiPaq engine works. It was explained by the product team in public sessions during conferences in 2010-2012 and we reported it in our content, with additional details we gathered over time.

  • @Thequaiadexx
    @Thequaiadexx 3 года назад

    For me, one point. When you increase the number of calculated columns or tables in your model by DAX It increase the "waiting time" to create or edit meassures, relationships, columns, tables. especially meassures that refer calculated columns or tables. In huge datasets the creation can take too long

    • @SQLBI
      @SQLBI 3 года назад

      This is caused by the internal validation of the model, which happens also when you create many measures. When you have this problem, you have another reason to switch editing to Tabular Editor, which is not affected by the issue (validation happens when you commit the changes, not for each single one).

  • @jimayas
    @jimayas 3 года назад +1

    Grazie tanto!
    Your videos are great and insightful as always

  • @Darknesslc3
    @Darknesslc3 3 года назад +2

    I used power query to create primary key in 2million rows dimension table then merge that key into 6million rows fact table, applying the query into model took >15minutes, i guess sometimes its better just go back to sql to do these things

    • @Bharath_PBI
      @Bharath_PBI 3 года назад

      Yes, SQL better if there's no query folding..

    • @SQLBI
      @SQLBI 3 года назад

      Definitely - managing slowly changing dimensions (SCD) is a very bad idea in both DAX and M - use SQL or other ETL tools for that!

  • @DIGITAL_COOKING
    @DIGITAL_COOKING 3 года назад +1

    great explanation Alberto

  • @dbszepesi
    @dbszepesi 3 года назад +1

    Great video! Thanks as always.

  • @radhikapatel8358
    @radhikapatel8358 3 года назад

    What about group by? Should I use group by in power query or create new table via dax?

    • @SQLBI
      @SQLBI 3 года назад +1

      It depends - do your own benchmark and evaluation, the general pros and cons are the same described in the video, but your priorities might change depending on the specific data model.

    • @radhikapatel8358
      @radhikapatel8358 3 года назад +1

      @@SQLBI thank you! I will analyse and decide whether to go by group by In power query or use summarisecolumns

  • @alexrosen8762
    @alexrosen8762 3 года назад +1

    Super useful tutorial. Thanx :-)

  • @Baldur1005
    @Baldur1005 3 года назад +2

    Once there are huge models that can be updated with ALM Toolkit - calculated column wins

  • @Bondoz007
    @Bondoz007 Год назад +1

    LOL I loved section 1 of the video 😉

  • @ДмитрийИванов-л5е3т
    @ДмитрийИванов-л5е3т 3 года назад +1

    Main idea of any video on this channel: You don't know the power of a DAX-side, young padawan!!!)))

  • @pedrodiasesquerdo48
    @pedrodiasesquerdo48 3 года назад +1

    he really know this thing

  • @gulmohar5441
    @gulmohar5441 3 года назад +1

    That was brilliant!!

  • @amarines2
    @amarines2 3 года назад +1

    Lol very funny short answer, excellent video

  • @OlsoNounas
    @OlsoNounas 3 года назад

    Although this was good , I don't believe it was sufficient to test one new column against another. The overall model size was a couple of hunderd mb smaller using PQ; if 10 new columns were added the gap will start to widen and a clear winner (my guess is PQ) will emerge? Regardless, you guys are awesome 👌

    • @SQLBI
      @SQLBI 3 года назад

      As usual, it depends. In general, PQ is better when you just need to compute other columns of the same row, whereas DAX could be more convenient when you have to aggregate rows of other table. But there are exceptions, so it's better to know all the options available.

  • @fatjanpaloja9182
    @fatjanpaloja9182 3 года назад +1

    I'm always till the end 🌝

  • @kennethstephani692
    @kennethstephani692 3 года назад

    Terrific video!!

  • @jasonwoodward5501
    @jasonwoodward5501 3 года назад +1

    Thanks

  • @sokgat7019
    @sokgat7019 3 года назад +1

    Hilarius!!!!!

  • @girishrainbow
    @girishrainbow 3 года назад

    My wait time increases when creating dax column

  • @MnMsg2Wrld
    @MnMsg2Wrld 3 года назад +1

    Il Padrino Power BI

  • @karannchew2534
    @karannchew2534 3 года назад

    "That's the end of Section One"

  • @KawanExcel
    @KawanExcel 3 года назад +1

    do you still there ?? hahahhaah