Pues bien, la respuesta a esta necesidad es el lenguaje de modelado de datos DAX. Usando DAX podemos modelar o dar forma a ese “concepto” (mediante una fórmula) y utilizarlo en nuestras visualizaciones sabiendo que, cada vez que se use, será el entorno en el que lo usemos el que decida sobre qué datos se aplica y cómo se aplica (en nuestro ejemplo de “nuevos clientes” sería el período de tiempo al que nos refiramos en cada momento). Estas fórmulas escritas en DAX susceptibles de ser creadas y usadas “sobre la marcha” es lo que llamamos “medidas”.
Desde cierto punto de vista, podemos calificar las columnas de las tablas como “estáticas” (se calculan una vez, salvo que se actualicen los datos) y las medidas como “dinámicas” (se calculan cada vez que se utilizan, adaptándose en cada caso al contexto en el que se usen).
DAX nos ofrece la posibilidad de modelar estas métricas de una forma extremadamente potente y eficiente. En todo caso, debemos saber que DAX no es un lenguaje sencillo. Para el modelado de métricas simples, DAX es muy simple. Para el modelado de métricas complejas, DAX puede resultar extremadamente complejo, especialmente si no tenemos claro ciertos conceptos en los que se basa este lenguaje.
En sentido estricto, DAX puede ser usado en tres escenarios distintos: en el modelado de métricas (las denominadas “medidas” ya comentadas), para la creación de nuevas columnas en nuestras tablas (que reciben el nombre de “columnas calculadas”) y para la creación de nuevas tablas en nuestro modelo de datos (las denominadas “tablas calculadas”).
El lenguaje DAX es el mismo en los tres casos, aunque la forma en la que éste se va a evaluar no es la misma, lo que supone una primera dificultad.
En las siguientes secciones revisaremos los principios en los que se basa DAX, aprenderemos a usar algunas decenas de funciones de este lenguaje, y conoceremos ciertos patrones frecuentes usados en el modelado de métricas.