SQLBI – 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.
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.
What You’ll Learn In Optimizing DAX Video Course
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
- SUMMARIZE
- ADDCOLUMNS
- 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
Sale Page: SQLBI – Optimizing DAX Video Course