DAX Studio EVALUATE Nøkkelord: Grunnleggende eksempler
Lær å bruke DAX Studio EVALUATE nøkkelordet med grunnleggende eksempler og få en bedre forståelse av hvordan dette kan hjelpe deg med databehandling.
Denne opplæringen vil diskutere kontekstovergang og nestede iteratorer. Du vil lære viktigheten av disse enhetene og hvordan de kan være en god kilde for optimalisering.
Hvis du husker det, skjer kontekstovergang når en radkontekst endres til en ekvivalent filterkontekst. Du må være klar over hva som skjer når en kontekstovergang skjer i iteratorene dine, fordi det ofte kan generere langsomme resultater.
Innholdsfortegnelse
Nestede iteratorer versus BEREGN
Hvis en kontekstovergang påkalles under en iterasjon, opprettes en materialiseringstabell. Dette betyr at kontekstovergang påkalles via formlene i din DAX. Tabellen er ukomprimerte data som sendes til formelmotoren.
For å demonstrere er det første målet for store salg som får gjeldende pris hvis den er større enn eller lik 500.
Det neste målet er gjennomsnittet av de store salgene med nestede iteratorer.
Det siste målet får gjennomsnittet av store salg uten en nestet iterator og en CallBackDataID.
Kjør målingen med den nestede iteratoren. Sørg for å tømme hurtigbufferen før du kjører, og slå deretter på Server Timings and Query Plan.
Du kan se at den genererte 3 skanninger, 2 CallBackDataID-er og 15 003 rader. Dette er en grunn til bekymring fordi det bare er 101 rader for utgangen. Dette skjedde fordi målet har to iteratorer eller X-funksjoner.
Dette er den fullstendig utvidede formen for tiltaket som ble kjørt:
Det itererer faktasalgstabellen med. Det gjentar seg deretter igjen med CallBackDataID ved hjelp av. Det forkortede formatet til dette tiltaket har en underforståttfunksjon som påkaller kontekstovergang og materialiserer tabellen. Det er derfor den trakk 15 003 rader, selv om det bare er 101 rader for utgang.
Kjør det andre målet som ikke har nestede iteratorer. Det gjentas fortsatt faktasalgstabellen ved å bruke AVERAGEX , men gjeldende pris er utenfor funksjonen. Den filtrerer ut produktene der gjeldende pris er større enn eller lik 500 og beregner deretter gjennomsnittet.
Du kan se at den bare har 2 skanninger, 104 rader og ikke har CallBackDataID. Så hvis du bruker CALCULATE , kan du bli kvitt de nestede iteratorene og CallBackDataIDene .
Konklusjon
Det er mange årsaker til en saktegående DAX. En av dem skyldes nestede iteratorer som forårsaker unødvendige kontekstoverganger. Disse iteratorene materialiserer flere rader enn nødvendig, noe som fører til at søkene dine går langsommere.
Den beste løsningen for dette er å plassere den inne i CALCULATE . Dette skaper mindre arbeid for formelmotoren og maksimerer egenskapene til lagringsmotoren.
Lær å bruke DAX Studio EVALUATE nøkkelordet med grunnleggende eksempler og få en bedre forståelse av hvordan dette kan hjelpe deg med databehandling.
Finn ut hvorfor det er viktig å ha en dedikert datotabell i LuckyTemplates, og lær den raskeste og mest effektive måten å gjøre det på.
Denne korte opplæringen fremhever LuckyTemplates mobilrapporteringsfunksjon. Jeg skal vise deg hvordan du kan utvikle rapporter effektivt for mobil.
I denne LuckyTemplates-utstillingen vil vi gå gjennom rapporter som viser profesjonell tjenesteanalyse fra et firma som har flere kontrakter og kundeengasjementer.
Gå gjennom de viktigste oppdateringene for Power Apps og Power Automate og deres fordeler og implikasjoner for Microsoft Power Platform.
Oppdag noen vanlige SQL-funksjoner som vi kan bruke som streng, dato og noen avanserte funksjoner for å behandle eller manipulere data.
I denne opplæringen lærer du hvordan du lager din perfekte LuckyTemplates-mal som er konfigurert til dine behov og preferanser.
I denne bloggen vil vi demonstrere hvordan du legger feltparametere sammen med små multipler for å skape utrolig nyttig innsikt og grafikk.
I denne bloggen vil du lære hvordan du bruker LuckyTemplates rangering og tilpassede grupperingsfunksjoner for å segmentere et eksempeldata og rangere det i henhold til kriterier.
I denne opplæringen skal jeg dekke en spesifikk teknikk rundt hvordan du viser kumulativ total kun opp til en bestemt dato i grafikken i LuckyTemplates.