Ytelsesproblem i DAX Studio: CallBackDataID

Denne opplæringen vil diskutere CallBackDataID , som er et ytelsesproblem i DAX Studio. Du vil lære hva det gjør og hvordan det påvirker ytelsen til DAX-søket ditt.

Lagringsmotoren fungerer for å gi data til formelmotoren i form av en databuffer. Men når lagringsmotoren ikke er i stand til å evaluere et uttrykk, spør den og kaller tilbake formelmotoren for å få hjelp med å bruke CallBackDataID .

Å ha en CallBackDataID i beregningen reduserer ytelsen til DAX fordi den bruker både lagrings- og formelmotoren. Det er imidlertid fortsatt bedre enn å bare ha formelmotoren til å gjøre alt arbeidet, fordi det fortsatt yter på komprimerte data og vil ikke kreve materialisering.

Dessuten, når formelmotoren er involvert, bufres ikke resultatene. Cacher forbedrer brukeropplevelsen ved å kjøre en spørring eller et mål i LuckyTemplates.

Innholdsfortegnelse

Hvor finner jeg CallBackDataID

CallBackDataID finner du i Server Timings i DAX Studio. På grunn av deres betydning er de uthevet i xmSQL-setningen. Når du ønsker å optimalisere DAX, er det å finne CallBackDataID det beste stedet å begynne.

En annen optimaliseringsteknikk er å utnytte filtrene innnår det er mulig. Å bruke CALCULATE i filtrene er bedre enn å brukesom et bord. FILTER er en iterator, og når du filtrerer en tabell, kommer den til å bli iterert av. Tilstedeværelsen av disse to iteratorene kan redusere søket ditt.

Her er to eksempelspørringer med og uten CallBackDataID .

Ytelsesproblem i DAX Studio: CallBackDataID

Dette er et lokalisert mål som definerer de to søkene ovenfor.

Ytelsesproblem i DAX Studio: CallBackDataID

Det øverste målet gjentar salgstabellen, multipliserer gjeldende pris og kvantitet og summerer det opp. Det nederste målet sjekker om kjøpsdatoen er større enn eller lik 31. mars 2016. Å ha en funksjon i et mål oppretter en CallBackDataID fordi den ikke bruker CALCULATE .

For å teste dette, kjør spørringen som har CallBackDataID . Sørg for å tømme hurtigbufferen og slå på Server Timings og Query Plans før du kjører den.

Hvis du klikker på fanen Server Timings nederst, kan du se at den første skanningen er uthevet. Dette er på grunn av tilstedeværelsen av CallBackDataID .

Ytelsesproblem i DAX Studio: CallBackDataID

Du kan også se CallBackDataID i xmSQL-setningen. IF - funksjonen i målet er utenfor lagringsmotorens muligheter, så den ber om hjelp fra formelmotoren.

Ytelsesproblem i DAX Studio: CallBackDataID

Hvordan løse ytelsesproblemet

Hvis du kjører spørringen som ikke har en CallBackDataID , kan du se at skanningene ikke lenger er uthevet.

Ytelsesproblem i DAX Studio: CallBackDataID

Dette er fordi CALCUATE- filteret skyves ned til lagringsmotoren. Den trenger ikke hjelp fra formelmotoren lenger fordi den kan fungere av seg selv.

Så mye som mulig, prøv å bruke filtre i CALCUATE . Den optimerer DAX-ytelsen ved å skyve det meste av arbeidet inn i lagringsmotoren, noe som gjør det raskere.




Konklusjon

Ytelsestreff kan oppstå hvis søket ditt er for komplekst til at lagringsmotoren kan fungere. Det tar med unødvendige prosesser som CallBackDataID i beregningen og senker DAX-en din. Du kan redusere det ved å bruke filtre i CALCUATE .

Leave a Comment

DAX Studio EVALUATE Nøkkelord: Grunnleggende eksempler

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.

Opprette en datotabell i LuckyTemplates

Opprette en datotabell i LuckyTemplates

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å.

LuckyTemplates Mobile Reporting Tips og teknikker

LuckyTemplates Mobile Reporting Tips og teknikker

Denne korte opplæringen fremhever LuckyTemplates mobilrapporteringsfunksjon. Jeg skal vise deg hvordan du kan utvikle rapporter effektivt for mobil.

Profesjonelle tjenesteanalyserapporter i LuckyTemplates

Profesjonelle tjenesteanalyserapporter i LuckyTemplates

I denne LuckyTemplates-utstillingen vil vi gå gjennom rapporter som viser profesjonell tjenesteanalyse fra et firma som har flere kontrakter og kundeengasjementer.

Microsoft Power Platform-oppdateringer | Microsoft Ignite 2021

Microsoft Power Platform-oppdateringer | Microsoft Ignite 2021

Gå gjennom de viktigste oppdateringene for Power Apps og Power Automate og deres fordeler og implikasjoner for Microsoft Power Platform.

Vanlige SQL-funksjoner: en oversikt

Vanlige SQL-funksjoner: en oversikt

Oppdag noen vanlige SQL-funksjoner som vi kan bruke som streng, dato og noen avanserte funksjoner for å behandle eller manipulere data.

LuckyTemplates Template Creation: Guide og tips

LuckyTemplates Template Creation: Guide og tips

I denne opplæringen lærer du hvordan du lager din perfekte LuckyTemplates-mal som er konfigurert til dine behov og preferanser.

Feltparametre og små multipler i LuckyTemplates

Feltparametre og små multipler i LuckyTemplates

I denne bloggen vil vi demonstrere hvordan du legger feltparametere sammen med små multipler for å skape utrolig nyttig innsikt og grafikk.

LuckyTemplates-rangering og tilpasset gruppering

LuckyTemplates-rangering og tilpasset gruppering

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.

Viser kun kumulativ total opp til en bestemt dato i LuckyTemplates

Viser kun kumulativ total opp til en bestemt dato i LuckyTemplates

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.