Forum Discussion
Power BI Service - Data duplicates after dataset refresh when Power Query joins reference other quer
Hola comunidad,
Estoy experimentando un problema de duplicación de datos en Power BI Service que solo ocurre
después de actualizar el conjunto de datos en línea. Al publicar el informe por primera vez, los números
son correctos, pero después de activar una actualización manual desde el servicio, los valores comienzan
a aumentar significativamente.
ENTORNO:
- Servicio Power BI (actualización en la nube)
- Fuentes de datos: Snowflake + SharePoint
- Tipo de actualización: Actualización completa (sin incrementos)
CAUSA RAÍZ IDENTIFICADA:
El problema parece estar relacionado con el orden de ejecución de Power Query durante la actualización.
Mi tabla de hechos (01_SNOW_CAT_LOST_OPPORTUNITY) contiene pasos de NestedJoin que
hacen referencia a dos tablas de dimensiones (DIM_24 y DIM_06) dentro de Power Query. Cuando
el servicio Power BI actualiza todas las consultas en paralelo, la tabla de hechos se une con
versiones parcialmente cargadas o vacías de las tablas de dimensiones, lo que provoca
la multiplicación de filas.
LO QUE HE INTENTADO:
1. Verifiqué que no hubiera claves duplicadas en las tablas de dimensiones usando el diagnóstico de Table.Group
. 2. Reemplacé las funciones no deterministas RANDOM() en Snowflake SQL con
lógica determinista
. 3. Agregué QUALIFY ROW_NUMBER() en Snowflake para garantizar claves únicas.
4. Borré la caché de Power BI Desktop antes de publicar.
PREGUNTA:
¿Existe alguna forma recomendada de controlar el orden de ejecución de las consultas de Power Query durante
una actualización completa en Power BI Service? ¿O la mejor opción es evitar
las dependencias entre consultas en Power Query y gestionar todas las uniones a nivel del origen de datos
o mediante relaciones de modelo?
Cualquier orientación sería muy apreciada.
Gracias.
You can of course dabble with Function.InvokeAfter - but why not let the data model do the joins?
3 Replies
- lbendlinSuper User
You can of course dabble with Function.InvokeAfter - but why not let the data model do the joins?
- v-prasareCommunity Support
Hi miki978 ,
We would like to confirm if our community members answer resolves your query or if you need further help. If you still have any questions or need more support, please feel free to let us know. We are happy to help you.
lbendlin ,Thanks for your prompt responseThank you for your patience and look forward to hearing from you.
Best Regards,
Prashanth Are
MS Fabric community support - v-prasareCommunity Support
Hi @miki978 ,
We would like to confirm if our community members answer resolves your query or if you need further help. If you still have any questions or need more support, please feel free to let us know. We are happy to help you.
Thank you for your patience and look forward to hearing from you.
Best Regards,
Prashanth Are
MS Fabric community support