SQLBits 2013

DAX Query Engine Internals

In this session, we will analyze the way DAX solves filtering. Starting from simple queries, we will follow the steps DAX does with the filter context, discovering the internals of the query engine of DAX.
The VertiPaq engine, which is the core of the new SQL Server Analysis Services Tabular engine, has an unprecedented level of performance, thanks to its fine-tuned architecture and its ability to perform fast cross-fltering. Automatic cross filtering between columns of the same table or related tables is a very powerful feature of DAX. It allows a measure to evaluate to different values for different cells in a pivot table even though the DAX expression for the measure does not change. Filter context is the underlying mechanism that enables this magic behavior. But it is also a very tricky concept that even befuddles some DAX experts. In this session, we will analyze the way DAX solves filtering. Starting from simple queries, we will follow the steps DAX does with the filter context, discovering the internals of the query engine of DAX.