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

Next up in the FabCon + SQLCon recap series: The roadmap for Microsoft SQL and Maximizing Developer experiences in Fabric. All sessions are available on-demand after the live show. Register now

Reply
sedareports
Advocate II
Advocate II

Actualización incremental con transformaciones de consultas no nativas

¿Puedo seguir utilizando la actualización incremental siempre y cuando se ejecute la actualización incremental (parámetros RangeStart/End) antes de romper el plegado de mi consulta con un montón de transformaciones? Mi conjunto de datos es bastante grande y la actualización incremental es difícil de probar, ya que la carga intial falla regularmente.

Estaba pensando que tal vez depende del tipo de transformaciones, así que aquí hay algunos ejemplos de lo que estoy usando:

- consultas de combinación para incorporar atributos clave de otras tablas

- añadir una columna calculada

- eliminar duplicados

- ordenar filas después de eliminar registros con el fin de agregar un índice limpio (es decir, uno que se puede utilizar más adelante en DAX para calclas diferencias entre registros).

5 REPLIES 5
Anonymous
Not applicable

Hola @sedareports ,

El requisito previo para que la actualización incremental funcione correctamente es que el origen de datos utilizado debe admitir el plegadode consultas. Los orígenes de datos Most que admiten consultas SQL admiten el plegado de consultas. Compruebe si las siguientes documentacións pueden ayudarle a resolver su problema.

Tratar con grandes conjuntos de datos

COMPROBACIÓN DEL PLEGADO DE CONSULTAS CON VIEW NATIVE QUERY

Plegado de consultas y actualización incremental

No plegable; el agujero negro del rendimiento de las consultas de energía

Saludos

Rena

Gracias @yingyinr por los enlaces de referencia. Debería haber aclarado, mi consulta inicial se puede plegar. Pero se realizan transformaciones posteriores (después del plegado y el uso de RangeStart/RangeEnd). Mi pregunta es qué transformaciones después de un pliegue de consulta que todavía causaría toda la consulta del conjunto de datos (es decir, igore el pliegue de la consulta?)

el plegado de consultas se detiene con la transformación del tipo de cambio:

let
    StartDate = "'"&DateTime.ToText(RangeStart)&"'",
    EndDate = "'"&DateTime.ToText(RangeEnd)&"'",
    SCADATags= "(" & Text.Combine(List.Transform(#"3SCADAFlowTags"[SCADAID], each "'"&_&"'"),",") & ")",
    Source = Odbc.Query("Driver={PostgreSQL ANSI(x64)};server=XXXX;port=5432;Database=XXXX", "SELECT * FROM XXXXX where scadaid in "&SCADATags&" and measurementdatetime >= "&StartDate&" and measurementdatetime < "&EndDate&" and measurementquality = '100'"),
  //query folding stops 
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"measurementvalue", type number}}),
    #"Merged Queries" = Table.NestedJoin(#"Changed Type", {"scadaid"}, #"3SCADAFlowTags", {"SCADAID"}, "SCADAFlowTags", JoinKind.FullOuter),
    #"Expanded SCADAFlowTags1" = Table.ExpandTableColumn(#"Merged Queries", "SCADAFlowTags", {"Description", "FromServiceArea", "MeterError", "ToServiceArea"}, {"Description", "FromServiceArea", "MeterError", "ToServiceArea"}),
    #"Added Custom" = Table.AddColumn(#"Expanded SCADAFlowTags1", "Date", each DateTime.Date([measurementdatetime])),
    #"Changed Type2" = Table.TransformColumnTypes(#"Added Custom",{{"MeterError", type number}}),
    #"Meter Error Calc" = Table.AddColumn(#"Changed Type2", "Multiplication", each -1*[measurementvalue]/(1+[MeterError]), type number),
    #"Renamed Columns" = Table.RenameColumns(#"Meter Error Calc",{{"Multiplication", "measurementvaluefinal"}}),
    #"Removed Duplicates1" = Table.Distinct(#"Renamed Columns", {"scadaid", "measurementvalue", "measurementdatetime","Description"}),
    #"Filtered Rows" = Table.SelectRows(#"Removed Duplicates1", each ([scadaid] <> null)),
    #"Sorted Rows" = Table.Sort(#"Filtered Rows",{{"scadaid", Order.Ascending}, {"measurementdatetime", Order.Ascending}}),
    #"Added Index" = Table.AddIndexColumn(#"Sorted Rows", "Index", 0, 1),
    #"Removed Columns" = Table.RemoveColumns(#"Added Index",{"ToServiceArea","measurementtype","networkfacilityid","measurementquality","objectid"}),
    #"Renamed Columns1" = Table.RenameColumns(#"Removed Columns",{{"FromServiceArea", "ServiceArea"}}),
    #"Changed Type1" = Table.TransformColumnTypes(#"Renamed Columns1",{{"Date", type date}}),
    #"Removed Columns1" = Table.RemoveColumns(#"Changed Type1",{"MeterError"})
in
    #"Removed Columns1"

Anonymous
Not applicable

Hola @sedareports ,

Siento mucho no tener claro tu problema. ¿Podría proporcionar más detalles al respecto?

Saludos

Rena

Mi pregunta/problema es, ¿puede un usuario realizar transformaciones después de que una consulta se doblando y seguir manteniendo la actualización incremental? Es decir, las tranformaciones subseqent solo se aplicarán a los nuevos datos cargados incrementalmente, o posiblemente desencadenarán una consulta/procesamiento completo de todo el conjunto de datos.

Por ejemplo.. una transformación de ordenación o la aplicación de un índice.

Anonymous
Not applicable

Helpful resources

Announcements
New to Fabric survey Carousel

New to Fabric Survey

If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.

Join our Fabric User Panel

Join our Fabric User Panel

Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.

March Power BI Update Carousel

Power BI Community Update - March 2026

Check out the March 2026 Power BI update to learn about new features.

Top Kudoed Authors