Query Folding-indicatoren
Notitie
Voordat u dit artikel leest, raden we u aan overzicht van de query-evaluatie en het vouwen van query's in Power Query te lezen om beter te begrijpen hoe vouwen werkt in Power Query.
Indicatoren voor het vouwen van query's helpen u inzicht te hebben in de stappen die worden gevouwen of die niet worden gevouwen.
Met indicatoren voor het vouwen van query's wordt het duidelijk wanneer u een wijziging aanbrengt die het vouwen onderbreekt. Deze functie helpt u om problemen sneller op te lossen, prestatieproblemen in de eerste plaats te voorkomen en beter inzicht te hebben in uw query's. In de meeste gevallen loopt u stappen op of vouwt u ze niet. Maar er zijn veel gevallen waarin het resultaat niet zo duidelijk is en deze gevallen worden besproken in diagnostische indicatoren voor stap (dynamisch, ondoorzichtig en onbekend).
Notitie
De functie voor het vouwen van query's is alleen beschikbaar voor Power Query Online.
Diagnostische gegevens over het vouwen van query's interpreteren
Wanneer u de query folding-indicator naast een stap bekijkt, is het belangrijkste om te begrijpen dat de diagnostische status niet opeenvolgend is. Met andere woorden, de indicator voor die stap beschrijft of de query als geheel, tot dat punt, vouwt of niet. Als u een indicator hebt die laat zien dat de query niet wordt gevouwen, gevolgd door een indicator die aangeeft dat deze wordt gevouwen, betekent dit dat uw query tot dat punt wel wordt gevouwen.
Deze interpretatie werkt zelfs met een eenvoudige query voor een SQL-bron. Als u bijvoorbeeld de voorbeelddatabase AdventureWorks gebruikt, maakt u verbinding met de tabel Production.Product en laadt u gegevens. Als u dit voorbeeld laadt via de Power Query-navigator, krijgt u de volgende query:
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data]
in
Navigation
Als u onderzoekt hoe deze code wordt weergegeven in indicatoren voor het vouwen van query's, ziet u dat de eerste stap niet eenduidig is. Maar de tweede stap wordt gevouwen, wat betekent dat de query tot dat punt wel wordt gevouwen.
In dit voorbeeld kunnen de eerste stappen niet worden bevestigd om te worden gevouwen (is niet overtuigend), maar de laatste stap die wordt gegenereerd wanneer u gegevens in eerste instantie laadt, wordt gevouwen. Hoe de eerste stappen (bron en soms andere navigatiestappen ) worden verwerkt, is afhankelijk van de connector. Met SQL wordt deze bijvoorbeeld verwerkt als een catalogustabelwaarde, die niet wordt gevouwen. Zodra u echter gegevens voor die verbindingslijn selecteert, wordt deze gevouwen.
Omgekeerd kan deze indicatie ook betekenen dat uw query omhoog wordt gevouwen tot een punt en vervolgens stopt met vouwen. In tegenstelling tot wanneer u een vouwindicator voor de stap hebt die laat zien dat alles wordt gevouwen, betekent dit niet dat alles niet wordt gevouwen. In plaats daarvan betekent het dat "niet alles" vouwt. Over het algemeen gebeurt alles tot aan de laatste vouwindicatorvouw, met meer bewerkingen na.
Als u het vorige voorbeeld wijzigt, kunt u een transformatie geven die nooit wordt gevouwen. Gebruik elk woord hoofdletter.
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data],
#"Capitalized each word" = Table.TransformColumns(Navigation, {{"Name", each Text.Proper(_), type text}})
in
#"Capitalized each word"
In de indicatoren voor het vouwen van query's hebt u dezelfde indicatoren als eerder, behalve dat de laatste stap niet wordt gevouwen. Alles tot aan deze laatste stap wordt uitgevoerd op de gegevensbron, terwijl de laatste stap lokaal wordt uitgevoerd.
Diagnostische indicatoren voor stap
Indicatoren voor het vouwen van query's maken gebruik van een onderliggend queryplan en vereisen dat deze informatie over de query kan ophalen om deze te rapporteren. Op dit moment ondersteunt het queryplan alleen tabellen, dus sommige gevallen (lijsten, records, primitieven) rapporteren niet als vouwen of niet. Op dezelfde manier is het rapport met constante tabellen ondoorzichtig.
Indicator | Pictogram | Beschrijving |
---|---|---|
Vouwen | De vouwen-indicator geeft aan dat de query tot aan deze stap wordt geƫvalueerd door de gegevensbron. | |
Niet vouwen | De indicator voor niet vouwen geeft aan dat een deel van de query tot aan deze stap buiten de gegevensbron wordt geƫvalueerd. U kunt deze vergelijken met de laatste vouwindicator, als er een is, om te zien of u de query opnieuw kunt rangschikken om beter te presteren. | |
Kan worden gevouwen | Het kan ongebruikelijk zijn dat vouwindicatoren ongebruikelijk zijn. Ze betekenen dat een query 'mogelijk' wordt gevouwen. Ze geven aan dat vouwen of niet vouwen tijdens runtime wordt bepaald bij het ophalen van resultaten van de query en dat het queryplan dynamisch is. Deze indicatoren worden waarschijnlijk alleen weergegeven met ODBC- of OData-verbindingen. | |
Ondoorzichtig | Ondoorzichtige indicatoren geven aan dat het resulterende queryplan om een of andere reden niet overtuigend is. Over het algemeen wordt aangegeven dat er een echte 'constante' tabel is of dat die transformatie of connector niet wordt ondersteund door de indicatoren en het hulpprogramma voor het queryplan. | |
Onbekende | Onbekende indicatoren vertegenwoordigen een afwezigheid van een queryplan, ofwel vanwege een fout of een poging om de evaluatie van het queryplan uit te voeren op iets anders dan een tabel (zoals een record, lijst of primitieve). |
Voorbeeldanalyse
Voor een voorbeeldanalyse maakt u eerst verbinding met de tabel Production.Product in Adventure Works (SQL). De eerste belasting, vergelijkbaar met het eerste voorbeeld, ziet eruit als de volgende afbeelding.
Als u meer stappen toevoegt die vouwt, wordt die groene lijn aan de rechterkant uitgebreid. Deze extensie treedt op omdat deze stap ook wordt gevouwen.
Als u een stap toevoegt die niet wordt gevouwen, wordt een andere indicator weergegeven. U kunt bijvoorbeeld elk woord nooit in hoofdletters vouwen. De indicator verandert, wat laat zien dat deze vanaf deze stap stopte met vouwen. Zoals eerder vermeld, worden de vorige stappen nog steeds gevouwen.
Het toevoegen van meer stappen downstream die afhankelijk zijn van hoofdlettergebruik van elke stap blijft niet vouwen.
Als u echter de kolom verwijdert waarop u het hoofdlettergebruik hebt toegepast, zodat het geoptimaliseerde queryplan opnieuw kan worden gevouwen, krijgt u een resultaat zoals in de volgende afbeelding. Iets als dit is echter ongebruikelijk. In deze afbeelding ziet u hoe dit niet alleen de volgorde van stappen is, maar ook de daadwerkelijke transformaties die van toepassing zijn.