Caché de datos: qué es y cómo ayuda a optimizar las consultas

En este tutorial, aprenderá qué es un caché de datos y por qué es importante. Un caché de datos almacena fragmentos de datos que podrían volverse valiosos para uso futuro.

Si necesita la misma información en una medida o acción futura, la caché de datos le proporcionará la información que necesita. Elimina la necesidad de que el sistema obtenga de nuevo los mismos conjuntos de datos.

En este tutorial, revisará ocho cosas importantes que debe recordar cuando trabaje con cachés de datos en LuckyTemplates:

Caché de datos: qué es y cómo ayuda a optimizar las consultas

Tabla de contenido

Definición y propósito de un caché de datos

Caché de datos: qué es y cómo ayuda a optimizar las consultas

Una caché de datos es una tabla temporal creada en la memoria por el motor de almacenamiento . Esta tabla temporal se envía al motor de fórmulas, que luego itera sobre esta información y realiza diferentes operaciones después de la consulta.

Caché de datos: qué es y cómo ayuda a optimizar las consultas

Toda la comunicación entre el motor de fórmulas y el motor de almacenamiento siempre ocurre en forma de caché de datos. El motor de fórmulas prepara los planes de consulta y luego envía las instrucciones al motor de almacenamiento. El motor de almacenamiento luego lo envía de vuelta al motor de fórmulas que devuelve el resultado al usuario.

Caché de datos: qué es y cómo ayuda a optimizar las consultas

Dado que el motor de fórmulas no tiene acceso directo a los datos almacenados en DirectQuery y VertiPaq, depende del motor de almacenamiento para las cachés de datos.

Caché de datos: qué es y cómo ayuda a optimizar las consultas

La caché de datos enviada por el motor de almacenamiento está en un formato sin comprimir. Esto significa que se puede reducir el tamaño de los datos almacenados en la herramienta Vertipaq.

Pero cuando llega el momento de devolver la caché de datos al motor de fórmulas, no se puede comprimir porque el motor de fórmulas no funciona con conjuntos de datos comprimidos.

¿Cuál es el impacto de un caché de datos en la RAM?

Caché de datos: qué es y cómo ayuda a optimizar las consultas

Si el motor de almacenamiento envía grandes cantidades de cachés de datos, ocupará mucho espacio en la memoria RAM del software. También va a consumir una cantidad significativa de tiempo para que el motor de fórmulas realice iteraciones y produzca un resultado.

Entonces, cuando escribe su código DAX, debe comprender que debe escribirse de una manera que minimice las filas en el caché de datos.

El mejor de los casos sería hacer coincidir la cantidad de filas que se muestran en el objeto visual con la cantidad de filas devueltas en la memoria caché de datos.

La mayoría de las veces, es difícil devolver la misma cantidad de filas. Si esto sucede, deberá revisar su código DAX y desglosarlo de una manera que optimice el caché de datos producido por el motor de almacenamiento.

Cómo una caché de datos optimiza las consultas

Funciones no optimizadas

Caché de datos: qué es y cómo ayuda a optimizar las consultas

Algunas de las funciones del lenguaje DAX no están optimizadas para el motor de almacenamiento. Para entender mejor esto, veamos un ejemplo.

Por ejemplo, en su código, en lugar de usar SUMMARIZE, puede usar la función Las funciones SUMMARIZE y GROUPBY realizan la misma operación. Sin embargo, hay diferencias notables según el escenario.

La función GROUPBY no está optimizada para el motor de almacenamiento. Si usa la función GROUPBY en una tabla de hechos con 12 millones de filas, producirá un caché de datos con la misma cantidad de filas. Esto puede ser tan grande como 600 mb hasta 1 gb.

Este tamaño puede ejercer mucha presión sobre su RAM. Entonces, en lugar de usar GROUPBY, use . La función SUMMARIZE da como resultado un tamaño de caché de datos más pequeño. Puede emparejarlo con GROUPBY como una función de nivel superior.

Reiteraciones reducidas

Cuando escribe sus medidas o consultas DAX, debe asegurarse de que el código producido entre bastidores sea adecuado para el motor de almacenamiento.

Caché de datos: qué es y cómo ayuda a optimizar las consultas

Debe escribir su código DAX de una manera que produzca un caché de datos que también se pueda usar en consultas posteriores. El beneficio de hacer esto es que, en lugar de realizar un escaneo por separado con VertiPaq , el motor de almacenamiento verificará si ya se recibió una consulta similar.

Si esto es cierto, significa que su caché de datos está disponible en la memoria. Entonces, en lugar de escanear la consulta nuevamente, VertiPaq simplemente la devolverá desde la memoria caché al motor de fórmulas.

Caché de datos: qué es y cómo ayuda a optimizar las consultas

Si ve un operador CALLBACKDATAID en su consulta del motor de almacenamiento, significa que esas consultas no se pueden almacenar en caché. Si en caso de que se envíe una consulta similar al motor de almacenamiento, realizará una reiteración.

Por lo tanto, VertiPaq tendrá que llamar al motor de fórmulas para resolver la consulta. Esto aumenta el tiempo de ejecución general porque la memoria caché no se puede usar en este caso.

Conclusión

El caché de datos es tu mejor amigo en el lenguaje DAX. Recuerde escribir su código DAX de manera que maximice el espacio de almacenamiento y reduzca el número de iteraciones de la herramienta VertiPaq. Puede reutilizar la memoria caché de datos ya producida por el motor de almacenamiento para reducir el tiempo de ejecución de la consulta.

Leave a Comment

Time Intelligence en LuckyTemplates: cómo calcular el número de transacciones realizadas en los últimos N días

Time Intelligence en LuckyTemplates: cómo calcular el número de transacciones realizadas en los últimos N días

Descubra cómo calcular el total de transacciones realizadas en los últimos N días y obtenga información útil utilizando la inteligencia de tiempo en LuckyTemplates.

Cómo evaluar clústeres en sus datos mediante la técnica DAX en LuckyTemplates

Cómo evaluar clústeres en sus datos mediante la técnica DAX en LuckyTemplates

En este tutorial, demuestro cómo mostrar clústeres en sus datos permite extraer información valiosa usando técnicas DAX avanzadas.

¿Cuánto personal tenemos actualmente? Lógica de fechas múltiples en LuckyTemplates usando DAX

¿Cuánto personal tenemos actualmente? Lógica de fechas múltiples en LuckyTemplates usando DAX

En este tutorial, aprenderá a calcular la <strong>población actual del personal</strong> para las relaciones múltiples de la tabla de calendario mediante la función COUNTROWS y FILTER en LuckyTemplates.

Hacer una solicitud HTTP en Power Automate

Hacer una solicitud HTTP en Power Automate

Aprenda a crear una solicitud HTTP con Power Automate y cómo implementar soluciones efectivas para la automatización de tareas.

Programe un flujo de escritorio para que se ejecute en Power Automate

Programe un flujo de escritorio para que se ejecute en Power Automate

En este tutorial, aprenda cómo programar un flujo de escritorio en Power Automate para automatizar tareas en la web y su escritorio.

Power Automate Terminar Control de acción en flujos

Power Automate Terminar Control de acción en flujos

Aprenda a usar correctamente el control Terminar acción de Power Automate que termina las acciones en un flujo si no se cumple alguna de las condiciones.

Power Query: combinar archivos de varias carpetas

Power Query: combinar archivos de varias carpetas

Aprenda a combinar archivos de varias carpetas en su red, escritorio, OneDrive o SharePoint utilizando Power Query.

Tipos de flujo de Power Automate y cuándo usarlos

Tipos de flujo de Power Automate y cuándo usarlos

En este blog, analizamos las similitudes y diferencias entre los tipos de flujo de Power Automate y determinamos cuándo usar cada flujo. Encuentra la mejor opción de automatización.

Conectores de Power Automate: número, texto y fecha y hora

Conectores de Power Automate: número, texto y fecha y hora

Familiarízate con algunos conectores Power Automate integrados que transforman cadenas en otro formato: número, texto y fecha y hora.

Tutorial del analizador VertiPaq: relaciones e integridad referencial

Tutorial del analizador VertiPaq: relaciones e integridad referencial

Este tutorial detallado sobre el analizador VertiPaq en DAX Studio le enseñará cómo usar la pestaña Relaciones para optimizar su DAX y resolver problemas de integridad referencial.