Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Actualización incremental o alternativa

Hola

Tengo una situación de mesa que no sé cómo resolver, y espero que alguien pueda señalarme en una buena dirección.

En el trabajo tenemos un solo cubo, back-end procesado en Azure SQL y cargado en modo de importación de Power BI, actualizado diariamente.

Una de las tablas de hechos es una tabla de informes de tiempo que contiene aproximadamente 4 millones de filas. El rango de tiempo de estas filas es para 2019 hasta hoy, y algunas de las filas son para el mes actual donde de un día al otro puede haber filas nuevas y eliminadas. Dado que hacemos una actualización total todos los días, no es un problema en este momento.

El problema está por delante, que esta mesa crecerá y crecerá y tomará más tiempo para actualizarse. E incluso hoy en día, las filas de tiempo para 2019 son de un sistema antiguo que ya no se usa, por lo que esas filas nunca cambiarán. Y eso lo mismo con casi todas las filas anteriores del mes pasado. Tal vez se elimine una fila y se agregue durante un período de 4 meses, pero no muy a menudo.

Nuestras licencias son profesionales y no serán premium.

¿Cómo puedo implementar algún tipo de actualización incremental donde algunas filas nunca necesitan ser actualizadas, y otras pueden ser "detectadas y cambiadas" (eliminar + insertar desde el cambio de clave principal)?

Si entiendo correctamente la función incremental de actualización i PBI realmente no puedo controlar esto de una buena manera con un pro licens, ¿o puedo?

Tengo control total sobre el backend, por lo que puedo bucear y lo que no tablas / vista cargadas en el modelo.

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Gracias por su rápida respuesta.

En la tabla de etapas, las filas se eliminan de forma completa y también se eliminan de forma completa más adelante en el proceso etl, pero como puedo controlar eso, puedo hacer que sea una eliminación suave al realizar las operaciones crud, la tabla final tiene una columna actualizada y una columna de fecha y hora eliminada.

Pero, ¿no creará esto muchas filas para el mes actual, ya que hay muchos cambios dentro del mes actual?

Lo ideal sería si, por ejemplo, el mes actual y los dos anteriores se truncan y se cargan en PBI, pero los meses anteriores se manejarían con la detección de cambios de datos al actualizar. ¿O hacer algún tipo de unión en la consulta de poder donde una tabla 'no se actualiza' diariamente sino mensualmente, pero supongo que eso no es posible ...?

Sin una comprensión completa de ETL / Database, etc., es difícil de decir, pero el último DT de actualización solo hará que los datos se actualicen si esa fecha está dentro del período de actualización incremental definido. Por ejemplo, si su período incremental se establece en 1 mes, también debe haber cambiado desde la última versión en caché de esa fecha.

Con el acceso que tiene, probablemente consideraría simplificar los datos de la base de datos antes de que Power BI se conecte. Siempre "Tan arriba como sea posible ..."

Si aún no lo has leído...

https://learn.microsoft.com/en-nz/power-bi/connect-data/incremental-refresh-overview#detect-data-cha...

La otra cosa a considerar, ¿cómo es el rendimiento ahora y qué tan rápido están creciendo los datos?

Es posible que tenga una solución de trabajo en el futuro previsible. Siempre puede hacer un plan para volver a visitar más tarde.

¡Gracias por tus aclaraciones!

Como escribí en la pregunta inicial, no es realmente un problema hoy porque los datos no están creciendo tan rápido. Pero será un problema dentro de un año o dos, y ahora tengo una idea de cómo avanzar.

Gracias

Syndicate_Admin
Administrator
Administrator

Eso es genial si tienes control sobre el backend.

¿Tiene una fecha de última actualización?

¿Es una eliminación dura o suave?

Si es suave, puede usar detectar cambios de datos con una columna lastUpdated.

KNP_0-1669315070581.png

Alternativamente, si la empresa puede definir un período en el que los datos NUNCA cambiarán, puede usarlo como su rango incremental, pero el rendimiento puede no ser excelente dependiendo de qué tan atrás esté.

Tendrá que averiguar cómo lidiar con las eliminaciones de cualquier manera. Idealmente, será una eliminación suave o podría capturarse de alguna manera para que puedan excluirse al actualizar.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.