En este tutorial, aprenderá cómo el motor de almacenamiento puede usar el modelo de datos para calcular información para su cálculo de DAX. Tiene la capacidad de usar combinaciones externas izquierdas a través del modelo de datos.
El motor de almacenamiento puede realizar uniones simples al tener una relación de uno a muchos en su modelo de datos o al usar la función que transfiere filtros de un lado a otro.
Una relación de uno a muchos significa tener una tabla de dimensiones relacionada con su tabla de hechos. DAX sabe cuándo está consultando una columna con este tipo de relación.
Tabla de contenido
Filtrar en cálculo DAX
Aquí hay un modelo de datos simple con cuatro tablas de dimensiones y una tabla de hechos en una configuración de esquema en estrella. También puede ver cuatro claves en la tabla de hechos que están relacionadas con las claves principales en las tablas de dimensiones.

Esta es la consulta DAX para el modelo de datos anterior:

Puede ver que la consulta agrega columnas a los valores del año DimCalendar. A continuación, la consulta solicita la transición de contexto de ventas totales. Cuando usa la función , debe usar para invocar la transición de contexto para evitar tener el mismo valor para la cantidad total de cada fila.
Después de ejecutar la consulta, verá la instrucción xmSQL y los resultados.

En el comunicado, puede ver cómo funciona la consulta. La cláusula WITH ejecuta la expresión matemática en DAX y luego selecciona DimCalendar Year. Asegúrese de extraer los filtros de la tabla de dimensiones para evitar que el rendimiento se ralentice.
A continuación, el motor de almacenamiento resume la expresión dentro de la cláusula WITH y selecciona datos de la tabla de ventas de hechos haciendo una combinación externa izquierda en DimCalendar a la fecha de compra de datos de ventas, que es igual a la fecha de DimCalendar.
Tener Left Outer Join en el motor de almacenamiento hace que todo el cálculo sea más rápido. Cuanto más trabajo se realice dentro del motor de almacenamiento, mejores serán los resultados. Tener uniones complejas ralentiza el rendimiento de DAX porque el motor de fórmulas se hace cargo del cálculo.
VertiPaq está diseñado para cosas más simples. Es simple en comparación con lo que puede hacer el motor de fórmulas. Es una cuestión de qué tan rápido puede generar y proporcionar un resultado.
Introducción al contexto de filtro en LuckyTemplates
DAX Tutorial: Contexto y el motor de cálculo
Cómo usar filtros simples en LuckyTemplates
Conclusión
La declaración xmSQL muestra lo que está haciendo su consulta DAX y cómo está realizando todo el cálculo. En el comunicado, puede ver el flujo de trabajo, como la ejecución de expresiones matemáticas y transiciones de contexto. VertiPaq puede invocar estas transiciones utilizando el modelo de datos con funciones simples.
Conozca más sobre VertiPaq y la declaración xmSQL utilizando este tutorial y explorando las publicaciones de blog anteriores que hablan sobre el motor de almacenamiento.