GroupBy i LuckyTemplates: En implisitt funksjon i VertiPaq

Denne opplæringen vil diskutere lagringsmotoren og underforstått GroupBy i LuckyTemplates. Du vil lære hva som skjer bak ytelsen og se potensielle flaskehalser. Dette vil tillate deg å lage ideer og strategier for å redusere disse problemene for raskere DAX-ytelse.

Lagringsmotorspørringene er uttrykt i et språk kalt xmSQL. Det er ikke et ekte programmeringsspråk, men en visuell representasjon av hva lagringsmotoren gjør. Den lar brukerne se hva beregningen gjør i bakgrunnen når de kjører forskjellige spørringer.

Innholdsfortegnelse

Implisitt GroupBy i LuckyTemplates

Det første du må se på er den underforståtte GroupBy som finnes i hver xmSQL.

Dette er et eksempelsøk som har funksjonen EVALUER og VERDIER:

GroupBy i LuckyTemplates: En implisitt funksjon i VertiPaq

Spørringen henter alle verdiene for året fra DimCalendar-tabellen. Du kan se at den returnerte 10 rader med data.

GroupBy i LuckyTemplates: En implisitt funksjon i VertiPaq

Prosessen vises i SQL-setningen der spørringen velger kalenderåret fra DimCalendar og deretter grupperer det etter år. Utsagnet antydet en GroupBy-funksjon i beregningen fordi det ikke er noe annet i spørringen. Implied GroupBy er mer tydelig når du bruker aggregeringer.

Aggregeringer inne i lagringsmotoren

For å få en ide om hva aggregering er, gå til DAX Studio og slå på Server Timings and Query Plan. Deretter kjører du dette eksempelmålet:

GroupBy i LuckyTemplates: En implisitt funksjon i VertiPaq

Etter å ha kjørt spørringen, kan du se at i motsetning til den forrige prøvespørringen som har én skanning, har dette målet to. Dette er fordi den første prøven bare har verdiene til DimCalendar Year. Dette eksempelsøket har kalenderåret og en aggregering.

GroupBy i LuckyTemplates: En implisitt funksjon i VertiPaq

Den første skanningen er selve spørringen.

GroupBy i LuckyTemplates: En implisitt funksjon i VertiPaq

Den velger DimCalendar-året og summerer salgsmengden fra salgsdatatabellen, som følger relasjonene til datamodellen.

GroupBy i LuckyTemplates: En implisitt funksjon i VertiPaq

I datamodellen følger DimCalendar-tabellen kjøpsdatokolonnen i faktatabellen til datokolonnen i kalendertabellen.

Den andre skanningen sikrer at alle manglende verdier blir tatt med.

Du kan se i resultatene at salgsbeløpet kun vises fra 2015 til 2018. Det viser imidlertid fortsatt årene 2012 til 2014 selv om de er tomme.

GroupBy i LuckyTemplates: En implisitt funksjon i VertiPaq

Konklusjon

Lagringsmotoren i DAX Studio viser deg hele prosessen bak en beregning. Den lar deg overvåke hver funksjon og se mulige treff som kan redusere ytelsen til din DAX. Med slik informasjon kan du lage løsninger for å redusere potensielle flaskehalser i utførelsen av DAX-koden din.

Hvis DAX-en din går sakte, se på lagringsmotoren og finn ut hva du kan gjøre for å forbedre ytelsen til rapporten.












Pipe In R: Koblingsfunksjoner med Dplyr

Pipe In R: Koblingsfunksjoner med Dplyr

I denne opplæringen lærer du hvordan du kobler funksjoner sammen ved å bruke dplyr-røroperatøren i programmeringsspråket R.

RANKX Deep Dive: A LuckyTemplates DAX-funksjon

RANKX Deep Dive: A LuckyTemplates DAX-funksjon

RANKX fra LuckyTemplates lar deg returnere rangeringen til et spesifikt tall i hver tabellrad som utgjør en del av en liste med tall.

Trekker ut LuckyTemplates-temaer og bilder fra PBIX

Trekker ut LuckyTemplates-temaer og bilder fra PBIX

Lær hvordan du demonterer en PBIX-fil for å trekke ut LuckyTemplates-temaer og bilder fra bakgrunnen og bruke den til å lage rapporten din!

Excel Formulas Cheat Sheet: Mellomveiledning

Excel Formulas Cheat Sheet: Mellomveiledning

Excel Formulas Cheat Sheet: Mellomveiledning

LuckyTemplates-kalendertabell: Hva er det og hvordan du bruker det

LuckyTemplates-kalendertabell: Hva er det og hvordan du bruker det

LuckyTemplates-kalendertabell: Hva er det og hvordan du bruker det

Python i LuckyTemplates: Hvordan installere og sette opp

Python i LuckyTemplates: Hvordan installere og sette opp

Lær hvordan du installerer programmeringsspråket Python i LuckyTemplates og hvordan du bruker verktøyene til å skrive koder og vise visuelle elementer.

Beregning av dynamiske fortjenestemarginer – enkel analyse av LuckyTemplates med DAX

Beregning av dynamiske fortjenestemarginer – enkel analyse av LuckyTemplates med DAX

Lær hvordan du beregner dynamiske fortjenestemarginer ved siden av LuckyTemplates og hvordan du kan få mer innsikt ved å grave dypere inn i resultatene.

Sortering av datotabellkolonner i LuckyTemplates

Sortering av datotabellkolonner i LuckyTemplates

Lær hvordan du sorterer feltene fra kolonner med utvidet datotabell på riktig måte. Dette er en god strategi å gjøre for vanskelige felt.

Finn dine beste produkter for hver region i LuckyTemplates ved å bruke DAX

Finn dine beste produkter for hver region i LuckyTemplates ved å bruke DAX

I denne artikkelen går jeg gjennom hvordan du kan finne de beste produktene dine per region ved å bruke DAX-beregninger i LuckyTemplates, inkludert TOPN- og CALCUATE-funksjonene.

Søppeldimensjon: Hva er det og hvorfor det er alt annet enn søppel

Søppeldimensjon: Hva er det og hvorfor det er alt annet enn søppel

Lær hvordan du bruker en søppeldimensjon for flagg med lav kardinalitet som du ønsker å inkludere i datamodellen din på en effektiv måte.