Optimizing DAX Video Course

This is the video course version of the Optimizing DAX workshop. It teaches you how to optimize queries and measures in DAX.

DAX is the native language of Power Pivot for Excel, Power BI Desktop and SSAS Tabular models in Microsoft SQL Server Analysis Services. This video course is aimed at users of Power BI, Power Pivot, and at Analysis Services developers who already know the DAX language and want to learn how to optimize DAX formulas and models for improving performance.

The goal of the video course is to enable you to find bottlenecks in DAX calculations using tools such as Profiler and DAX Studio, providing the knowledge to improve the performance by using different DAX formulas or by changing the data model, when required. The video course is made up of over 10 hours of lectures, plus another estimated 8 hours of individual exercises. You can watch the videos at anytime and the system will keep track of your progress. Within the video course you can download the material for all the exercises.

Students have access to a private discussion area where they can interact with the instructors asking questions related to the lectures and the exercises.

Prerequisite: Attendees need a good knowledge of the DAX Language, and a previous experience using either Power Pivot for Excel, or Power BI Desktop, or Analysis Services Tabular. You may acquire this knowledge by following the Mastering DAX Workshop, or by having equivalent real-world experience.

Collapse allCurriculum

  • Presentation of Optimizing DAX

    • Presentation of Optimizing DAX
  • Exercises, slides, and demos

    • How to download and complete exercises
    • Exercises download
    • Demos download
    • Slides of the video course
  • VertiPaq storage engine

    • VertiPaq storage engine
    • VertiPaq in-memory columnar database
    • What is VertiPaq?
    • Run Length Encoding (RLE)
    • VertiPaq compression
    • Segmentation
    • Data memory usage
    • Materialization in DAX
    • Storage internals
    • Relationships
    • Reduce dictionary size
    • Hands-on labs
    • Lab 1 - Exercise 1 - Understanding information about a model
    • Lab 1 - Exercise 1 - Solution
  • Measuring performance

    • Measuring performance
    • Tabular query architecture
    • Two engines
    • SQL Server Profiler
    • DAX Studio
    • Gathering counters
    • Understanding data caches
    • xmSQL syntax
    • Filter
    • Lab 2 - Exercise 1 - Simple grouping
    • Lab 2 - Exercise 1 - Solution
    • Lab 2 - Exercise 2 - Simple filters
    • Lab 2 - Exercise 2 - Solution
    • Lab 2 - Exercise 3 - Basic time intelligence
    • Lab 2 - Exercise 3 - Solution
  • Analyzing query plans

    • Analyzing query plans
    • Multiple measures
    • Cache
    • Storage engine features
    • CallbackDataID
    • Measuring MDX
    • Lab 3 - Exercise 1 - High value countries
    • Lab 3 - Exercise 1 - Solution
    • Lab 3 - Exercise 2 - Sum of similar measures
    • Lab 3 - Exercise 2 - Solution
    • Lab 3 - Exercise 3 - Context transition
    • Lab 3 - Exercise 3 - Solution
    • Lab 3 - Exercise 4 - Counting invoices
    • Lab 3 - Exercise 4 - Solution
  • Optimizing large models

    • Optimizing large models
    • How many rows do you have?
    • SUM or SUMX?
    • Optimizing degenerate dimensions
    • Dimension bottlenecks
  • Advanced optimizations

    • Advanced optimizations
    • Introduction
    • Division by zero
    • Filter materialization
    • Optimizing IF statements
    • Column filters vs table filters
    • Currency conversion
    • Lab 4 - Exercise 1 - Open orders
    • Lab 4 - Exercise 1 - Solution
    • Lab 4 - Exercise 2 - Optimizing if-then-else
    • Lab 4 - Exercise 2 - Solution
    • Lab 4 - Exercise 3 - Currency conversion
    • Lab 4 - Exercise 3 - Solution
    • Lab 4 - Exercise 4 - New customers
    • Lab 4 - Exercise 4 - Solution
  • Optimization examples

    • Optimization examples
    • Introduction
    • Events in progress
    • New and returning customers
  • Conclusion

    • Conclusion
Student Rating
31 ratings
3-star Reviews (2 of 20)
  • Marian Szetyinszki (Jun 28, 2022)

    it is fine, sometimes difficult to follow , some videos look outdated, so it would be wort adding annotation or comments on outdated parts below video with the latest info or link to articles with new content. Also it is now not really needed to comment /show what used to be before 2016 or even 2014 and how things were being solved in the past anymore... The Optimizing DAX Exercises.pdf is little bit confusing and difficult to follow in relation to what is shown in the Solution videos (mainly LAB 4 Solutions chapter) , looks like some solutions were not part of the video?

    • Thank you Marian for your valuable feedback. As a matter of fact Marco and Alberto are currently tackling exactly that, a new updated version of Optimizing DAX. Current students of Optimizing DAX at the time of that release will be upgraded to the new and improved version of the video course! Stay tuned, Claire
      Reply by Claire Costa (Jun 28, 2022)
  • Richard Lee (Jul 16, 2021)

    The course is useful, but it seems a bit out of date now and the presentation could be better. The free Power BI Tools course is excellent and seems more recent. I find the presentation difficult to watch. The English skills could be better for teaching a complex subject like this; it pushes unnecessary workload onto the listener trying to figure out what exactly they mean and this distracts from understanding the subject matter. The big screen is a big mistake - the presenter stands in front of the screen and blocks the view; the screen wastes valuable space. Presenters on edX, Coursera, and YouTube manage to avoid this mistake. The sound quality has an echo. They are also talking in very loud voices as though they have a large audience. In the Power BI Tools course, they present individually and the overall presentation is much better. More use of good diagrams would help to explain conceptual information -- they rely too much on words and bullet point PowerPoint slides.

Would you prefer a classroom course?

This video course is based on a classroom course we teach all around the world. If you prefer a classroom learning experience, take a look at the dates below for a list of our upcoming classroom courses!
Sorry, there are no classroom courses scheduled at this time.