Denne vejledning vil diskutere forespørgselsoptimeringspraksis. Du lærer, hvad VertiPaq kan gøre med caches for at forbedre DAX-ydelsen og generere nøjagtige resultater.
Indholdsfortegnelse
VertiPaq-cacher i DAX-beregninger
Det første emne er VertiPaq-cachen. Før du kører dine forespørgsler, skal du først rydde cachen, fordi andre brugere muligvis ikke bruger den cache, der er indlejret i beregningen. Dette vil få din DAX til at arbejde hurtigere med at levere resultater.
En af de bedste fremgangsmåder er altid at rydde cachen, før du foretager nogen form for optimering. Du kan også køre din forespørgsel med en varm cache for at se, om der kan foretages ændringer for at bruge den eksisterende cache. Ved at gøre det kan du få præcise repræsentationer af, hvad dine forespørgsler gør, og hvordan du kan optimere dem.
Lagermotoren har mulighed for at cache resultater, der vil blive brugt senere. Når formelmotoren anmoder om de samme data, bruger lagermotoren automatisk den samme cache, som blev brugt i tidligere anmodninger. Dette viser, at cachesystemet forbedrer brugerens ydeevne.
Gå til DAX Studio for at rydde cachen. I øverste venstre hjørne skal du klikke på Kør og vælge Ryd cache og derefter Kør. Du kan indstille den til altid at rydde cachen før den kører, så du ikke behøver at gøre det hver gang.

Der er også en Ryd cache-knap i nærheden af Kør-knappen, hvis du vil rydde cachen, før du foretager dine forespørgsler.

VertiPaq har mulighed for at detektere identiske udtryk brugt i forespørgslen for at undgå at gentage eller genscanne arbejdet.
Dette er et eksempel på en forespørgsel. Det er et defineret mål for det samlede salg, der itererer tabellen Faktasalg og tager produktet af mængden og den aktuelle pris.

I funktionen nedenfor refererer Samlet salg til MÅL- funktionen ovenfor. Det samlede salg2 er skrevet på samme måde i funktionen ovenfor.
Hvis du kører forespørgslen, kan du kun se udtrykket én gang. Lagermotoren ved, at der er to identiske udtryk. Dette forhindrer din forespørgsel i at omarbejde på de samme udtryk.

DAX-forespørgselsoptimering
En af de vigtigste ting, du kan gøre for at optimere DAX, er at lokalisere flaskehalse. Dette leder dig til, hvor du skal begynde at optimere, og giver dig mulighed for at lave løsninger på ydeevneproblemer. Det er vigtigt at have et holistisk syn på, hvad du forsøger at opnå, som er at udvikle tingene i orden og give korrekte og hurtige resultater .
Først skal du sikre dig, at din datamodel er konfigureret korrekt. DAX er sat op til at fungere på en bestemt måde, så du skal følge dens flow for at få en mere jævn oplevelse.
Dernæst skal du finde de tiltag, der giver de fleste problemer. Kør dem i Server Timings i DAX Studio og se efter unødvendige rækker ogs som påvirker den samlede varighed af foranstaltningens beregning.
Du kan også finde dem i kolonnen Records i Physical Query Plan. Sørg for, at antallet af poster er lig med eller tæt på antallet af rækker i det endelige output. Dette sikrer, at din forespørgsel materialiserer nok tabeller til resultaterne.
Konklusion
DAX-optimering giver hurtigere ydeevne og præcise svar. Hvis dine forespørgsler tager tid at generere resultater, skal du optimere din DAX. Dette forbedrer den overordnede ydeevne af dine målinger ved kun at bruge de nødvendige processer til beregningen.