Hvad er Power Query & M Language: En detaljeret oversigt
Denne vejledning giver et overblik over Power Query Editor og M-sproget inde på LuckyTemplates-skrivebordet.
Denne øvelse vil diskutere kontekstovergang og indlejrede iteratorer. Du lærer vigtigheden af disse enheder, og hvordan de kan være en god kilde til optimering.
Hvis du husker det, sker kontekstovergang, når en rækkekontekst ændres til en tilsvarende filterkontekst. Du skal være opmærksom på, hvad der sker, når der sker en kontekstovergang i dine iteratorer, fordi det ofte kan generere langsomme resultater.
Indholdsfortegnelse
Indlejrede iteratorer versus BEREGN
Hvis en kontekstovergang påkaldes under en iteration, oprettes en materialiseringstabel. Det betyder, at kontekstovergang påkaldes via formlerne i din DAX. Tabellen er ukomprimerede data, der sendes til formelmotoren.
For at demonstrere er det første mål for store salg, der får den aktuelle pris, hvis den er større end eller lig med 500.
Det næste mål er gennemsnittet af det store salg med indlejrede iteratorer.
Det sidste mål får gennemsnittet af Big Sales uden en indlejret iterator og et CallBackDataID.
Kør målingen med den indlejrede iterator. Sørg for at rydde cachen, før du kører, og slå derefter Server Timings og Query Plan til.
Du kan se, at den genererede 3 scanninger, 2 CallBackDataID'er og 15.003 rækker. Dette er en grund til bekymring, fordi der kun er 101 rækker til output. Dette skete, fordi målingen har to iteratorer eller X-funktioner.
Dette er den fuldt udvidede form for den foranstaltning, der blev kørt:
Det itererer Faktasalg-tabellen med. Det gentager derefter igen med CallBackDataID ved hjælp af. Det forkortede format af denne foranstaltning har en underforståetfunktion, der påkalder kontekstovergang og materialiserer tabellen. Derfor trak den 15.003 rækker, selvom der kun er 101 rækker til output.
Kør den anden måling, der ikke har indlejrede iteratorer. Det gentager stadig faktasalgstabellen ved hjælp af AVERAGEX , men den aktuelle pris er uden for funktionen. Den filtrerer de produkter fra, hvor den aktuelle pris er større end eller lig med 500, og beregner derefter gennemsnittet.
Du kan se, at den kun har 2 scanninger, 104 rækker og ikke har et CallBackDataID. Så hvis du bruger CALCULATE , kan du slippe af med de indlejrede iteratorer og CallBackDataID'er .
Konklusion
Der er mange årsager til en langsom ydende DAX. En af dem skyldes indlejrede iteratorer, som forårsager unødvendige kontekstovergange. Disse iteratorer materialiserer flere rækker end nødvendigt, hvilket får dine forespørgsler til at blive langsommere.
Den bedste løsning til dette er at placere den inde i CALCULATE . Dette skaber mindre arbejde for formelmotoren og maksimerer lagermotorens muligheder.
Denne vejledning giver et overblik over Power Query Editor og M-sproget inde på LuckyTemplates-skrivebordet.
Lær, hvordan du opretter en sideinddelt rapport, tilføjer tekster og billeder og derefter eksporterer din rapport til forskellige dokumentformater.
Lær, hvordan du bruger SharePoint-automatiseringsfunktionen til at skabe arbejdsgange og hjælpe dig med at mikrostyre SharePoint-brugere, -biblioteker og -lister.
Udvid dine rapportudviklingsevner ved at deltage i en dataanalyseudfordring. Acceleratoren kan hjælpe dig med at blive LuckyTemplates-superbruger!
Lær, hvordan du beregner løbende totaler i LuckyTemplates ved hjælp af DAX. Løbende totaler giver dig mulighed for ikke at blive fanget af et individuelt resultat.
Forstå konceptet med variabler i DAX i LuckyTemplates og betydningen af variabler for, hvordan dine mål beregnes.
Lær mere om det brugerdefinerede visuelle kaldet LuckyTemplates Slope-diagrammet, som bruges til at vise stigning/fald for en enkelt eller flere metrics.
Opdag farvetemaerne i LuckyTemplates. Disse er afgørende for, at dine rapporter og visualiseringer kan se ud og fungere problemfrit.
Beregning af et gennemsnit i LuckyTemplates kan gøres på mange måder for at give dig præcise oplysninger til dine virksomhedsrapporter.
Lad os dykke ned i Standard LuckyTemplates-temaer og gennemgå nogle af de funktioner, der er indbygget i selve LuckyTemplates Desktop-applikationen.