Skapa en datumtabell i LuckyTemplates
Ta reda på varför det är viktigt att ha en dedikerad datumtabell i LuckyTemplates och lär dig det snabbaste och mest effektiva sättet att göra det.
I den här handledningen får du lära dig vad en datacache är och varför den är viktig. En datacache lagrar databitar som kan bli värdefulla för framtida användning.
Om du behöver samma information i en framtida åtgärd eller åtgärd kommer datacchen att tillhandahålla den information du behöver. Det eliminerar att systemet återhämtar samma uppsättningar data.
I den här handledningen går du igenom åtta viktiga saker att komma ihåg när du hanterar datacache i LuckyTemplates:
Innehållsförteckning
Definition och syfte med en datacache
En datacache är en temporär tabell skapad i minnet av . Denna temporära tabell skickas till formelmotorn som sedan itererar över denna information och utför olika operationer efter frågan.
All kommunikation mellan och lagringsmotorn sker alltid i form av en datacache. Formelmotorn förbereder frågeplanerna och skickar sedan instruktionerna till lagringsmotorn. Lagringsmotorn skickar sedan tillbaka det till formelmotorn som returnerar resultatet till användaren.
Eftersom formelmotorn inte har direkt åtkomst till data som lagras i DirectQuery och VertiPaq, förlitar den sig på lagringsmotorn för datacacharna.
Datacachen som skickas av lagringsmotorn är i ett okomprimerat format. Detta innebär att storleken på data som lagras i Vertipaq-verktyget kan minskas.
Men när det är dags att returnera datacachen tillbaka till formelmotorn kan den inte komprimeras eftersom formelmotorn inte fungerar med komprimerade datamängder.
Vad är en datacaches inverkan på RAM-minnet
Om lagringsmotorn skickar enorma bitar av datacchar kommer detta att ta mycket utrymme på programvarans RAM. Det kommer också att ta en betydande mängd tid för formelmotorn att utföra iterationer och producera ett resultat.
Så när du skriver din DAX-kod måste du förstå att den ska skrivas på ett sätt som minimerar raderna i datacachen.
Det bästa scenariot skulle vara att matcha antalet rader som visas i visualiseringen med antalet rader som returneras i datacchen.
För det mesta är det svårt att returnera samma antal rader. Om detta händer måste du granska din DAX-kod och dela upp den på ett sätt som optimerar datacachen som produceras av lagringsmotorn.
Hur en datacache optimerar frågor
Ooptimerade funktioner
Vissa av funktionerna i DAX-språket är inte optimerade för lagringsmotorn. För att bättre förstå detta, låt oss titta på ett exempel.
Till exempel, i din kod, istället för att använda SUMMARIZE, kan du använda funktionen. SUMMARIZE och GROUPBY-funktionerna utför samma operation. Det finns dock betydande skillnader beroende på scenariot.
GROUPBY-funktionen är inte optimerad för Storage Engine. Om du använder GROUPBY-funktionen på en faktatabell med 12 miljoner rader kommer den att producera en datacache med samma antal rader. Detta kan vara så stort som 600mb upp till 1gb.
Denna storlek kan sätta mycket press på ditt RAM-minne. Så istället för att använda GROUPBY, använd . SUMMARIZE-funktionen resulterar i en mindre datacachestorlek. Du kan para ihop den med GROUPBY som en toppnivåfunktion.
Minskade upprepningar
När du skriver dina DAX-mått eller frågor måste du se till att koden som produceras bakom kulisserna är lämplig för lagringsmotorn.
Du måste skriva din DAX-kod på ett sätt som producerar datacache som även kan användas i efterföljande frågor. Fördelen med att göra detta är att istället för att utföra en separat skanning med , kommer lagringsmotorn att kontrollera om en liknande fråga redan har tagits emot.
Om detta är sant betyder det att dess datacache är tillgängligt i minnet. Så istället för att skanna frågan igen, kommer VertiPaq helt enkelt att returnera den från cacheminnet till formelmotorn.
Om du ser en fråga i din lagringsmotor, betyder det att dessa frågor inte kan cachelagras. Om en liknande fråga skickas till lagringsmotorn kommer den att utföra en upprepning.
Därför måste VertiPaq anropa formelmotorn för att lösa frågan. Detta ökar den totala exekveringstiden eftersom cacheminnet inte kan användas i det här fallet.
Slutsats
Datacachen är din bästa vän på DAX-språket. Kom ihåg att skriva din DAX-kod på ett sätt som maximerar lagringsutrymmet och minskar VertiPaq-verktygets antal iterationer. Du kan återanvända datacachen som redan producerats av Storage Engine för att minska exekveringstiden för frågor.
Ta reda på varför det är viktigt att ha en dedikerad datumtabell i LuckyTemplates och lär dig det snabbaste och mest effektiva sättet att göra det.
Denna korta handledning belyser LuckyTemplates mobilrapporteringsfunktion. Jag ska visa dig hur du kan utveckla rapporter effektivt för mobila enheter.
I denna LuckyTemplates Showcase går vi igenom rapporter som visar professionell serviceanalys från ett företag som har flera kontrakt och kundengagemang.
Gå igenom de viktigaste uppdateringarna för Power Apps och Power Automate och deras fördelar och konsekvenser för Microsoft Power Platform.
Upptäck några vanliga SQL-funktioner som vi kan använda som sträng, datum och några avancerade funktioner för att bearbeta eller manipulera data.
I den här handledningen kommer du att lära dig hur du skapar din perfekta LuckyTemplates-mall som är konfigurerad efter dina behov och preferenser.
I den här bloggen kommer vi att visa hur man lager fältparametrar med små multiplar för att skapa otroligt användbara insikter och bilder.
I den här bloggen kommer du att lära dig hur du använder LuckyTemplates ranknings- och anpassade grupperingsfunktioner för att segmentera en exempeldata och rangordna den enligt kriterier.
I den här handledningen kommer jag att täcka en specifik teknik kring hur man visar Kumulativ total endast upp till ett specifikt datum i dina bilder i LuckyTemplates.
Lär dig hur du skapar och anpassar punktdiagram i LuckyTemplates, som huvudsakligen används för att mäta prestanda mot mål eller tidigare år.