Optimeringsguide för Power BI
Den här artikeln innehåller vägledning som gör det möjligt för utvecklare och administratörer att skapa och underhålla optimerade Power BI-lösningar. Du kan optimera din lösning i olika arkitekturlager. Lager omfattar:
- Datakällorna
- Datamodellen
- Visualiseringar, inklusive instrumentpaneler, Power BI-rapporter och sidnumrerade Power BI-rapporter
- Miljön, inklusive kapaciteter, datagatewayer och nätverket
Optimera datamodellen
Datamodellen stöder hela visualiseringsupplevelsen. Datamodeller finns antingen i Power BI-ekosystemet eller externt (med DirectQuery eller Live Connection) och i Power BI kallas de semantiska modeller. Det är viktigt att förstå dina alternativ och välja lämplig semantisk modelltyp för din lösning. Det finns tre lagringslägen för semantisk modelltabell: Import, DirectQuery och Composite. Mer information finns i Semantiska modeller i Power BI-tjänst och semantiska modelllägen i Power BI-tjänst.
Information om specifika riktlinjer för tabelllagringsläge för semantikmodell finns i:
- Tekniker för dataminskning för importmodellering
- Vägledning för DirectQuery-modell i Power BI Desktop
- Vägledning för sammansatt modell i Power BI Desktop
Optimera för rapportförfattare och modellkonsumenter
Den semantiska modellen är grunden för all rapportering i Power BI. Användare av den semantiska modellen kan skapa Power BI-rapporter i Power BI Desktop genom att ansluta till en publicerad semantisk modell eller ansluta till data och skapa en lokal semantisk modell. Den semantiska modellen kan också användas för att skapa Power BI-rapporter i webbläsaren, skapa Power BI-utforskningar, skapa sidnumrerade rapporter, skapa DAX-frågor och skapa rapporter i Excel med Analysera i Excel, ansluta till Power BI i Excel eller exportera data från ett visuellt rapportobjekt samt många andra rapporteringsverktyg. En semantisk modellförfattare kan hjälpa semantiska modellkonsumenter att förstå och använda den semantiska modellen med hur de skapar modellen.
- Namn: Tabeller, kolumner och mått i den semantiska modellen med beskrivande namn. Till exempel är "Butiksförsäljning" som ett tabellnamn mer intuitivt än "Table1".
- Beskrivningar: Tabeller, kolumner och mått i modellen kan ha beskrivningar tillagda för att ge mer information än vad som får plats i namnet. Förklara inte bara vad de innehåller utan även hur de ska användas.
- Dölj: Du kan dölja tabeller, kolumner och mått i modellen för att bara visa vad du förväntar dig att de ska använda i en rapport. Relationskolumner kan till exempel vara ett ID som inte är nödvändigt för rapportering och kan döljas eftersom det inte förväntas användas i en rapport, eller datakolumner som har ett mått för att aggregera kolumnen kan döljas för att uppmuntra användning av måttet i stället. Dolda objekt kan alltid tas bort senare av modellkonsumenten, så de kommer fortfarande att vara tillgängliga, men att dölja kan ge fokus.
- Hierarkier: Du kan skapa hierarkier för att förmedla hierarkin över flera kolumner. En kalenderhierarki kan till exempel innehålla kolumnerna År, Månad, Dag och en produkthierarki kan innehålla kolumnerna Kategori, Underkategori och Produkt. Högerklicka på en kolumn för att skapa en hierarki.
- Mått: Du kan använda mått för att aggregera datakolumner i semantikmodellen för att ge konsekvens mellan rapporter. Mått kan variera från SUM för en kolumn till ett hälsoindex som kombinerar flera sammansättningar på ett specifikt sätt eller jämför aggregeringar mellan tidsperioder, till exempel dagligt genomsnitt den här månaden jämfört med det dagliga genomsnittet för samma månad förra året. Mått kan också visas i Power BI-sökning och andra funktioner, till exempel mått och styrkort.
- Format: Du kan ange hur en kolumn eller ett mått ska visas i ett visuellt objekt som standard. Värden i visuella objekt kan anpassas ytterligare i det visuella objektet. Formatalternativ inkluderar om det har ett tusentals kommatecken, hur många decimaler, hur ett datum visas osv. Du kan också använda anpassade eller dynamiska format.
- Datakategori: Du kan ange en kolumndatakategori, till exempel om det är ett land eller en webb-URL.
Det här är vanliga funktioner i Power BI-semantikmodellen som kan användas för att hjälpa rapportförfattarna och modellkonsumenterna. Det finns många andra, till exempel beräkningsgrupper, fältparametrar, vad händer om parametrar och grupperings- och binningskolumner, som bör utvärderas för att se om de tillämpar dina specifika rapporteringsbehov.
Optimera visualiseringar
Power BI-visualiseringar kan vara instrumentpaneler, Power BI-rapporter eller sidnumrerade Power BI-rapporter. Var och en har olika arkitekturer, så var och en har sin egen vägledning.
Instrumentpaneler
Det är viktigt att förstå att Power BI har en cache för dina instrumentpaneler , förutom levande rapportpaneler och strömmande paneler. Om din semantiska modell framtvingar dynamisk säkerhet på radnivå (RLS) måste du förstå prestandakonsekvenserna eftersom paneler cachelagrar per användare.
När du fäster levande rapportpaneler på en instrumentpanel hanteras de inte från frågecachen. I stället beter de sig som rapporter och gör frågor till v-kärnor i farten.
Som namnet antyder ger hämtning av data från cachen bättre och mer konsekventa prestanda än att förlita sig på datakällan. Ett sätt att dra nytta av den här funktionen är att ha instrumentpaneler som den första landningssidan för dina användare. Fäst ofta använda och efterfrågade visuella objekt på instrumentpanelerna. På så sätt blir instrumentpaneler en värdefull "första försvarslinje", som ger konsekventa prestanda med mindre belastning på kapaciteten. Användarna kan fortfarande klicka sig fram till en rapport för att analysera information.
För directquery- och liveanslutningssemantiska modeller uppdateras cachen regelbundet genom att fråga datakällan. Som standard sker det varje timme, även om du kan konfigurera en annan frekvens i inställningarna för semantisk modell. Varje cacheuppdatering skickar frågor till den underliggande datakällan för att uppdatera cacheminnet. Antalet frågor som genererar beror på antalet visuella objekt som fästs på instrumentpaneler som är beroende av datakällan. Observera att om säkerhet på radnivå är aktiverat genereras frågor för varje säkerhetskontext. Anta till exempel att det finns två olika roller som kategoriserar dina användare och att de har två olika vyer av data. Under uppdatering av frågecachen genererar Power BI två uppsättningar frågor.
Power BI rapporter
Det finns flera rekommendationer för att optimera Power BI-rapportdesign.
Kommentar
När rapporter baseras på en DirectQuery-semantisk modell finns ytterligare rapportdesignoptimeringar i DirectQuery-modellvägledning i Power BI Desktop (Optimera rapportdesign).
Använd de mest restriktiva filtren
Ju mer data som ett visuellt objekt behöver visa, desto långsammare är det visuella objektet att läsa in. Även om den här principen verkar uppenbar är det lätt att glömma. Anta till exempel att du har en stor semantisk modell. Baserat på den semantiska modellen skapar du en rapport med en tabell. Slutanvändarna använder utsnitt på sidan för att komma till de rader de vill ha, vanligtvis är de bara intresserade av några dussin rader.
Ett vanligt misstag är att lämna standardvyn för tabellen ofiltrerad, dvs. alla 100 M+ rader. Data för dessa rader läses in i minnet och komprimeras inte vid varje uppdatering. Den här bearbetningen skapar enorma krav på minne. Lösningen: Använd filtret "Översta N" för att minska det maximala antalet objekt som tabellen visar. Du kan ange maxobjektet till större än vad användarna skulle behöva, till exempel 10 000. Resultatet är att slutanvändarupplevelsen inte ändras, men minnesanvändningen minskar kraftigt. Och viktigast av allt, prestanda förbättras.
En liknande designmetod som ovan föreslås för varje visuellt objekt i rapporten. Fråga dig själv, behövs alla data i det här visuella objektet? Finns det sätt att filtrera mängden data som visas i det visuella objektet med minimal påverkan på slutanvändarupplevelsen? Kom ihåg att tabeller i synnerhet kan vara dyra.
Begränsa visuella objekt på rapportsidor
Ovanstående princip gäller lika för antalet visuella objekt som läggs till på en rapportsida. Vi rekommenderar starkt att du begränsar antalet visuella objekt på en viss rapportsida till endast det som är nödvändigt. Knappbeskrivningar för visning av detaljerad information och knappbeskrivningar för rapportsidor är bra sätt att ge ytterligare information utan att störa fler visuella objekt på sidan.
Utvärdera prestanda för anpassade visuella objekt
Se till att placera varje anpassat visuellt objekt i sina steg för att säkerställa höga prestanda. Dåligt optimerade visuella Power BI-objekt kan påverka hela rapportens prestanda negativt.
Sidnumrerade Power BI-rapporter
Sidnumrerade Power BI-rapportdesigner kan optimeras genom att använda metodtips för rapportens datahämtning. Mer information finns i Vägledning för datahämtning för sidnumrerade rapporter.
Se också till att kapaciteten har tillräckligt med minne allokerat till arbetsbelastningen sidnumrerade rapporter.
Optimera miljön
Du kan optimera Power BI-miljön genom att konfigurera kapacitetsinställningar, ändra storlek på datagatewayer och minska nätverksfördröjningen.
Kapacitetsinställningar
När du använder kapaciteter – tillgängliga med Power BI Premium-licenser (P SKU:er), PPU-licenser (Premium per användare) eller Power BI Embedded (A SKU:er, A4-A6)) kan du hantera kapacitetsinställningar. Mer information finns i Microsoft Fabric-kapacitetslicenser och Hantera Premium-kapaciteter.
Viktigt!
Ibland refererar den här artikeln till Power BI Premium eller dess kapacitetsprenumerationer (P SKU:er). Tänk på att Microsoft för närvarande konsoliderar köpalternativ och drar tillbaka Power BI Premium per kapacitets-SKU:er. Nya och befintliga kunder bör överväga att köpa kapacitetsprenumerationer för Infrastrukturresurser (F SKU:er) i stället.
Mer information finns i Viktig uppdatering som kommer till Power BI Premium-licensiering och Vanliga frågor och svar om Power BI Premium.
Gatewaystorlek
En gateway krävs när Power BI måste komma åt data som inte är tillgängliga direkt via Internet. Du kan installera den lokala datagatewayen på en lokal server eller IaaS (Infrastruktur som en tjänst för virtuell dator).
Information om gatewayarbetsbelastningar och storleksrekommendationer finns i Storleksändring för lokal datagateway.
Svarstid för nätverk
Nätverksfördröjning kan påverka rapportprestanda genom att öka den tid som krävs för att begäranden ska nå Power BI-tjänst och för svar som ska levereras. Klienter i Power BI tilldelas till en viss region.
Dricks
Information om var din klient finns finns i Var finns min Power BI-klient?
När användare från en klientorganisation får åtkomst till Power BI-tjänst dirigeras deras begäranden alltid till den här regionen. När begäranden når Power BI-tjänst kan tjänsten sedan skicka ytterligare begäranden, till exempel till den underliggande datakällan eller en datagateway, som också är föremål för nätverksfördröjning.
Verktyg som Azure Speed Test ger en indikation på nätverksfördröjning mellan klienten och Azure-regionen. För att minimera effekten av nätverksfördröjning bör du i allmänhet sträva efter att hålla datakällor, gatewayer och din Power BI-kapacitet så nära som möjligt. Helst finns de inom samma region. Om nätverksfördröjningen är ett problem kan du prova att hitta gatewayer och datakällor närmare din Power BI-kapacitet genom att placera dem i molnbaserade virtuella datorer.
Övervaka prestanda
Du kan övervaka prestanda för att identifiera flaskhalsar. Långsamma frågor – eller visuella rapportobjekt – bör vara en brännpunkt för fortsatt optimering. Övervakning kan utföras vid designtillfället i Power BI Desktop eller på produktionsarbetsbelastningar i Power BI Premium-kapaciteter. Mer information finns i Övervaka rapportprestanda i Power BI.
Relaterat innehåll
Mer information om den här artikeln finns i följande resurser: