Få raskere rapporter med ett enkelt grep
Opplever du at rapporter laget med Power BI Desktop tar stor plass, og at modellen du har bygget er treg å jobbe med? Fortvil ikke, for løsningen som gir deg en raskere rapport kan være å deaktivere automatisk dato.
Vi skal vise et eksempel fra Wide World Importers der vi sparer over 150 MB på rapportfilen ved å deaktivere automatisk dato/klokkeslett.
Hvordan fungerer kalkulerte datotabeller?
Power BI oppretter kalkulerte datotabeller for å gi brukeren et hierarki til å trekke ut år, kvartal, måned og dag fra.
Et hierarki med datoverdier er for så vidt bra, men kosten kan være høy. Vi kan se for oss en tabell med en kolonne der vi har datoverdier for siste ni år. I tillegg til disse, finner vi verdien 01.01.1900 på en av radene, og 31.12.2099 på en annen. Selv om resten av verdiene er fra 2012 til 2021, så må Power BI nå kalkulere en tabell som inneholder alle datoer i en periode på 199 år. Dette utgjør 73 049 rader.
Dersom det eksisterer flere datofelt i den samme tabellen, eller i andre tabeller, vil det oppstå en fiktiv tabell for hvert felt. En tabell med fire kolonner formatert som dato, vil da generere 4 ekstra tabeller med mange potensielt unødvendige rader.
De kalkulerte datotabellene er ikke synlige i modellen, og dette gjør at man lett kan bli «lurt». I programmet Tabular Editor derimot, kan vi se tabellene og hvordan de er relatert til hvert sitt datofelt.
Ettersom det er vanlig å lage en felles datotabell, behøver vi ikke et eget hierarki for hver datokolonne i modellen. Vi kan komme bedre ut av det med å ha kolonner for år, kvartal, måned og dag i den dedikerte datotabellen, og eventuelt bygge et hierarki ut ifra disse. Da har vi også kontroll på spennet av datoer, og kan sette at vi for eksempel skal ha alle datoer mellom 01.01.2012 og 31.12.2020, og vi sitter igjen med en raskere rapport.
Slå av kalkulerte datotabeller
Under Fil – Alternativer og innstillinger – Alternativer finner vi et valg for Automatisk dato/tidspunkt. Ved å fjerne avhakningen for dette valget, vil ikke Power BI opprette kalkulerte datotabeller neste gang du lager en ny modell. Du kan også endre valget på en eksisterende rapport med modell, slik at de kalkulerte tabellene forsvinner. Man må da tenke på at rapporter knyttet til modellen via Power BI Service ikke vil fungere ordentlig dersom det er gjort uttrekk på datohierarki. Disse rapportene bør endres først.
Kalkulerte datotabeller kan være nyttig når man lager små rapporter i Power BI, men for dem som lager store modeller – og som bruker egne dimensjoner for dato – er ikke dette en nødvendighet. Vi krympet rapportfilen for Wide World Importers ned til en brøkdel, og det viser hvilken effekt dette gir.
Vår anbefaling er derfor å deaktivere automatisk dato/klokkeslett, og heller bruke en dedikert datotabell for raskere rapporter og mindre plassbehov. Ta gjerne utgangspunkt i vår kalender som er laget med Power Query.