Optimizing DAX expressions involving multiple measures
Writing measures referencing other measures is in general a good idea that simplifies the DAX code, but you might face specific bottlenecks. This article describes which performance issues might arise...
View ArticlePhysical and Virtual Relationships in DAX
DAX calculations can leverage relationships present in the data model, but you can obtain the same result without physical relationships, applying equivalent filters using specific DAX patterns. This...
View ArticleSSAS Tabular Translator
SSAS Tabular Translator is an editor for the JSON translation files exported and imported by SQL Server Data Tools for a Tabular model in compatibility version 1200 or later. You can copy the...
View ArticleTranslations in Analysis Services 2016
Translations are a new feature in Analysis Services Tabular 2016. This article explains how to use this feature and introduce SSAS Tabular Translator, a free tool to edit translations files. This...
View ArticleTuning query limits for DirectQuery
This article describes a few query limits existing in DirectQuery for both Power BI and Analysis Services Tabular 2016, explaining when you can modify them. From hereinafter, the article describes the...
View ArticleAdding a measure to a Tabular model
This article describes how to add a measure to a Tabular model already deployed on Analysis Services by using C# or PowerShell. This can be useful to deploy user-defined metrics without deploying the...
View ArticleUsing ALLEXCEPT versus ALL and VALUES
This article describes the semantic difference between ALLEXCEPT and the joint use of ALL and VALUES, showing practical examples of the different results in Power BI and SSAS 2016. If you are a loyal...
View ArticleAnalyze DirectQuery requests using DAX Studio
This article describes how DAX Studio can analyze the SQL queries sent to a relational database by Power BI or Analysis Services Tabular in DirectQuery mode. The recent release of DAX Studio 2.5...
View ArticleAnalyzing events with a duration in DAX
This article analyzes how to efficiently work with events that lasts over time, such as the duration of an order considering the distance between order date and ship date. Whenever we speak about...
View ArticleDAX Editor
DAX Editor is an extension to SSDT that makes it easier to edit DAX measures in a Microsoft Analysis Services Tabular project. DAX Editor includes: DAX Syntax Highlighting DAX Formatting Textual...
View ArticleUsing DAX Editor
This article describes how to improve the productivity when you editing DAX measures in a SSAS Tabular model by using the DAX Editor for Visual Studio. DAX Editor is a free Visual Studio extension that...
View ArticleImplement Non Visual Totals with Power BI security roles
This article describes how to implement non-visual-totals with security roles in Power BI and Analysis Services Tabular, which by default show only visual totals of measures in the model. In Power BI...
View ArticleUsing Process Add in tabular models
This article describes how to implement incremental updates to an Analysis Services database in Tabular mode with compatibility version 1200 or higher. In Analysis Services you can process a table in a...
View ArticleVertiPaq Analyzer 1.7
VertiPaq Analyzer is useful to analyze VertiPaq storage structures for a data model in Analysis Services Tabular. Learn how to connect VertiPaq Analyzer to Power BI and to SSAS Tabular, and see quick...
View ArticleCompare equivalent periods in DAX
If you do not have a full month with data, comparisons such as year-over-year (YOY) might require particular filters in order to do a like for like comparison in DAX. This article describes how to...
View ArticleSSAS Activity Monitor
SSAS Activity Monitor is an open source tool to monitor the current activity (sessions, transactions, connections, and locks) on an Analysis Services instance. It works for both Tabular and...
View ArticleSSAS Events Analyzer
SSAS Events Analyzer is a simple monitoring system that can be easily applied to any SSAS server with a minimal effort. The goals are the following: Monitor a production server with a minimal impact,...
View ArticleIntroducing SUMMARIZECOLUMNS
This article explains how to use SUMMARIZECOLUMNS, which is a replacement of SUMMARIZE and does not require the use of ADDCOLUMNS to obtain good performance. UPDATE 2017-02-01: The SUMMARIZECOLUMNS...
View ArticleContext Transition and Expanded Tables
This article describes how table expansion and filter context propagation are important DAX concepts to understand and fix small glitches in DAX expressions. I keep on telling my students how important...
View Article