Variabler og udtryk i Power Query Editor
Denne vejledning vil diskutere om variabler og udtryk i Power Query Editor. Du lærer at skrive og bygge dem ordentligt.
Denne tutorial vil vise VertiPaq Analyzer Metrics iog hvordan det hjælper med at optimere dine DAX-koder. Hver metrik vil blive diskuteret, så du forstår, hvordan hver enkelt kan hjælpe med at forbedre ydeevnen af dine koder.
Dette er VertiPaq Analyzer Metrics.
Indholdsfortegnelse
Fanen Tabeller i VertiPaq Analyzer
Den første metrik er fanen Tabeller eller den overordnede tabelvisning. På denne fane kan du se kolonnen Kardinalitet . Det refererer til antallet af unikke værdier i en tabel. Det er den vigtigste kolonne i din datamodel og.
Hvis du ser på DimCustomer- tabellen, er der 20 unikke værdier. Det betyder, at der er 20 separate kunder med ikke-gentagende værdier.
Dette er et eksempel på en DAX-forespørgsel.
Den bruger funktion til at tælle rækkerne i forskellige tabeller. Antallet af rækker svarer til kardinaliteten produceret i tabellen.
Kolonner til datastørrelse
Den næste kolonne efter Kardinalitet hedder Tabel . Det viser, hvor meget hukommelse bordet fylder. Jo større datastørrelsen er, jo mere opmærksomhed har den brug for. Kolonnen Kolonnen Størrelse er summen af kolonnerne Data , Ordbog og Hierarkistørrelse .
Kolonnerne Data , Ordbog og Hierarkistørrelse viser den samlede størrelse af henholdsvis de komprimerede data, ordbogskodede kolonner og automatisk genererede hierarkikolonner.
Dernæst er kolonnen Kodning , som viser den anvendte type kodning. Værdi- og Hash- kodning forekommer i alle tabellerne, det er derfor, resultatet viser "Mange".
Overtrædelser af referenceintegritet vil også blive vist i kolonnen RI-overtrædelser . Overtrædelser sker, når en værdi findes i faktatabellen , men ikke findes i dimensionstabellen .
Kolonnen Brugerhierarkistørrelse viser størrelsen af brugerdefinerede hierarkier. Størrelsen af forholdet baseret på mange-siden af en en-til-mange-indstilling vil også blive vist i kolonnen Relationsstørrelse .
Dernæst har du %DB- kolonnerne. Denne kolonne viser, hvor meget en tabel fylder i procent af den samlede størrelse af alle tabeller.
I eksemplet kan du se, at DimCustomer- tabellen fylder næsten 66% af den samlede tabelstørrelse. Procentdelen af din database til din faktatabel skal være større end dimensionstabellerne .
Dette er procenterne:
Da dette eksempel ikke har mange data, kan kolonnerne Segmenter og Partitioner ikke bruges; det vil kun være anvendeligt med større borde.
Den sidste kolonne i fanen hedder Kolonner . Det viser blot antallet af kolonner, der er i en tabel. Datatype- og % -tabelkolonnerne gælder ikke for den overordnede tabelvisning.
Inde i faktasalgstabellen
Dette er tabellen over overordnede faktasalgsdata.
Hver kolonne i tabellen har sin egen information. Det overordnede tabelniveau har for eksempel forskellige kolonner såsom kardinalitet , kolonnestørrelse osv.
I eksemplet vil du bemærke, at salgsnøglens kardinalitet er lig med tabellens kardinalitet. Det er fordi SalesKey ikke har nogen gentagende værdier og er en unik værdi.
Kolonnen Kolonnestørrelse er lige så vigtig som tabelniveauet. Den viser summen af kolonnerne Data , Ordbog og Hierarkistørrelse .
Du kan også se, at den anvendte indkodningsmetode er Hash Encoding , som opretter en særskilt liste over værdier.
Hvis du ser på rækken Antal , vil du se, at den bruger Hash- kodningsmetoden, selvom datatypen er et heltal.
Årsagen til dette er, at SQL Server Analysis Services opsætter en metode til at bestemme den bedste komprimeringsmetode.
Kolonnen % tabel viser kolonnen som en procentdel af den samlede tabelstørrelse. I eksemplet har SalesKey den største størrelse af tabellen, hvilket giver mening, fordi den har den højeste kardinalitet og kolonnestørrelse.
På samme måde viser % Database- kolonnen procentdelen af enten en tabel eller kolonne i en tabel som en procentdel af hele databasen.
Du vil se, at FactSales- tabellen er 46,8 % af datamodellens samlede størrelse. SalesKey - kolonnen inde i FactSales- tabellen fylder 15 % af den samlede databasestørrelse.
Da dette eksempel kun har en lille mængde data, vil du kun have ét segment og partition. Det samme gælder kolonnen Kolonner . Antallet af kolonner vil altid være én i kolonnevisningen.
Fanen Kolonner i VertiPaq Analyzer
Fanen Kolonner har et lettere format at se data på. Det giver mere detaljerede oplysninger end fanen Tabeller .
Du vil bemærke, at den har lignende kolonner som fanen Tabeller .
Fanen Kolonner giver dig mulighed for at sortere enhver af kolonnerne. I dette eksempel er det sorteret efter Kardinalitet, som er angivet med en lille trekant. Kolonnen Rækker viser, hvor mange rækker der er i en tabel.
Du kan se, at FactSales-SalesKey har 15.000 rækker og kardinalitet. Alle primærnøgler har rækker, der er lig med deres tilsvarende kardinalitet.
Hvis antallet af rækker ikke er lig med antallet af kardinaliteter, vil tabellen have gentagne værdier.
Hvis du ser på FactSales-CustomerKey , vil du bemærke, at den har en kardinalitet på 801 og en kolonnestørrelse på næsten 1,1 mio.
Det betyder, at det skal optimeres og komprimeres. For at optimere den skal du gå til LuckyTemplates-filen og åbne DimCustomer- tabellen.
Kolonnen CustomerKey er en strengtype af data. Du kan se, at værdierne starter med C og derefter efterfulgt af et tal. Klik på Erstat værdier for at ændre værdierne i kolonnen.
Find værdien C og skift den til tom. Skift derefter datatypen til Helnummer.
Gør det samme for kolonnen CustomerKey i faktatabellen . Klik på Anvend og gå tilbage til DAX Studio. Klik derefter på View Metrics for at genindlæse DAX og derefter sortere den efter kardinalitet.
Søjlestørrelsen er nu reduceret til 46.372 fra 1,1 mio. Hvis du ser på tabelvisningen, vil du se, at kolonnestørrelsen også er faldet til 46.372.
Hvis du gør det samme med SalesPersonKey, som har en kolonnestørrelse på næsten 1,1 mio., kan du reducere den til 5.540.
Ændring af streng- eller teksttypeværdier til heltalstype kan optimere din DAX for at få den til at yde bedre.
Konklusion
DAX-optimering starter i DAX Studio ved hjælp af VertiPaq Analyzer. I analysatorens metrics kan du se, hvordan tabeller og kolonner fungerer, og bestemme, hvilken enhed der skal optimeres og forbedres mere.
Hvis du vil finde ud af, hvilken del af koden, der bremser din kodes ydeevne, skal du bruge VertiPaq Analyzer. Det vil helt sikkert gøre din DAX bedre.
Nickligh
Denne vejledning vil diskutere om variabler og udtryk i Power Query Editor. Du lærer at skrive og bygge dem ordentligt.
Jeg vil vise dig, hvordan du automatiserer processen med at sortere en kolonne efter en anden kolonne inde i LuckyTemplates og SSAS- eller SQL-serveranalysetjenester.
Et LuckyTemplates-varmekort er en type visualisering, der bruges til at vise datatæthed på et kort. I denne tutorial vil jeg diskutere, hvordan vi kan oprette en - gå ikke glip af noget!
Jeg vil lære dig et virkelig interessant eksempel omkring Pareto-princippet, og hvordan man laver et Pareto-diagram ved hjælp af vigtige DAX-formler.
Lær, hvordan et tilpasset søjlediagram på markedspladsen kan bruges til datasammenligning, og hvordan du kan oprette dem ved hjælp af eksempler i LuckyTemplates.
Lær, hvordan Power Automate Static Results-funktionen fungerer, og hvorfor det er godt at blive tilføjet til de bedste fremgangsmåder, når du opretter flowdiagrammer.
eDNA demonstrerer, hvordan man udfører sprog- eller tekstoversættelse ved hjælp af Python og overfører det til LuckyTemplates. LuckyTemplates Python Tutorial.
I denne øvelse lærer du, hvordan du bruger Gauge Bullet Graph til at oprette et Gantt-diagram i LuckyTemplates Report Builder.
I denne øvelse lærer du, hvordan du opretter et tredimensionelt (3D) scatterplot ved hjælp af Python i LuckyTemplates.
Effektiv LuckyTemplates-rapportering – Sessionsgennemgang og ressourcedownload