Kapacitetsplanering för sidnumrerade rapporter

GÄLLER FÖR: Sidnumrerade Power BI-rapporter Power BI-tjänst Power BI Desktop

Lär dig hur du planerar din Premium-kapacitet för att få ut bästa möjliga prestanda av dina sidnumrerade rapporter till en lägsta kostnad. Om du migrerar till Power BI från ett annat business intelligence-verktyg kan du läsa artiklarna nedan innan du bestämmer vilken kapacitet du ska använda.

Kapacitetsplanering

Beräkningen av vilken typ av kapacitet du behöver beror på flera faktorer, till exempel antalet visuella objekt i dina rapporter, komplexiteten i frågor mot rapporten och kvaliteten på datakällan eller datamodellen. Du bör också överväga den aktuella användningen av din kapacitet under tider med hög belastning innan du lägger till sidnumrerade rapporter i den.

Innan du börjar planera vilken kapacitet du behöver kan du läsa tabellen Kapaciteter och SKU:er för att se vilka resurser som erbjuds av varje kapacitet.

Tänk på följande när du planerar din kapacitet:

  • Komplexiteten i rapportdesignen. Kapslad tablix, flera underrapporter och flera rad- och kolumngrupper bidrar till designens komplexitet och kräver kapacitetsresurser.

  • Mängden data som hämtas av rapporten. Ju mer data rapporten behöver, desto fler resurser krävs från din kapacitet.

  • Hur rapporten hämtar data. När du använder anslutningsappar, drivrutiner eller gatewayer kan datahämtningen ta längre tid, kräva mer resurser och därmed bli dyrare.

  • När du exporterar stora rapporter till format som Excel och PDF krävs mer resurser än att läsa varje sida, använda växlingsknappar och söka i rapporterna.

Hur många användare kan en SKU hantera?

För att testa sidnumrerade rapporter på olika kapaciteter körde vi tre olika typer av arbetsbelastningar mot olika SKU-storlekar. Varje arbetsbelastning bestod av en samtidig återgivning av en enskild rapport med olika storlekar.

  • Liten – Dataaggregeringstabell som skapats över 100 rader från en Azure SQL-datakälla.

  • Medel – Dataaggregeringstabell som skapats över 100 000 rader från en Azure SQL-datakälla.

  • Stor – Dataaggregeringstabell som skapats över 250 000 rader från en Azure SQL-datakälla.

Vår analys för Power BI Premium visar att antalet samtidiga användare vid en viss tidpunkt, inklusive dagliga toppar, inte tenderar att överstiga fem procent av den totala användarbasen.

Baserat på förhållandet fem procent samtidighet beskriver följande tabell det ungefärliga maximala antalet användare som en SKU kan hantera innan den överbelastas. När kapaciteten är överbelastad sker begränsning på din kapacitet. Mer information finns i Vad händer med trafik under överbelastning om jag inte autoskalar?

Arbetsbelastning F64- eller P1-SKU:er F128- eller P2-SKU:er
Liten 2 500 användare 5 000 användare
Medel 1 900 användare 3 800 användare
Stora 1 300 användare 2 600 användare

Tänk på att talen i tabellen refererar till avsedda kapaciteter som inte kör andra åtgärder. Din kapacitet kanske redan använder CPU-resurser för åtgärder som:

  • Datahämtning och bearbetning

  • Andra arbetsbelastnings- och bakgrundsåtgärder

  • Komplex datagruppering och omformning

  • Datafiltrering

Samtidiga förfrågningar

Varje arbetsbelastning i en kapacitet, inklusive arbetsbelastningen sidnumrerade rapporter, har högst 500 samtidiga rapportåtergivningar vid en viss tidpunkt. Om kapaciteten återger 100 rapporter och har 200 begäranden om export av sidnumrerade rapporter har du 200 samtidiga rapportåtergivningsbegäranden kvar.

Planera inläsningen av samtidiga begäranden i förväg för att undvika överbelastning. Om du överskrider gränsen för samtidiga begäranden uppstår felet För många begäranden (429).

Använda måttappen

Med hjälp av appen Kapacitetsmått för Microsoft Fabric kan du uppskatta effekten av din sidnumrerade rapport på din kapacitet. Appen mäter cpu-användningen över tid så att du kan förstå hur din kapacitet presterar.

För att testa din sidnumrerade rapport föreslår vi att du använder en dedikerad ren kapacitet. En ren kapacitet hjälper till att isolera resultat från effekten av andra användare och arbetsbelastningar.

Beroende på det målinriktade testscenariot, till exempel genomsnittlig eller maximal användningsverifiering, väljer eller skapar du en rapport som representerar den förväntade resursförbrukningen och laddar upp den till en Premium/Fabric-arbetsyta i den kapacitet som du skapade för testet.

Kör rapporten flera gånger och använd måttappen för att få de genomsnittliga CPU-sekunderna som använts för att köra rapporten. När du beräknar den tid det tog att köra rapporten bör du tänka på följande:

  • Appen visar aggregerade värden. Du kan behöva dela upp resultatet med antalet gånger du kör rapporten.

  • Det finns flera Power BI-objekt och åtgärder som kan vara inblandade i rapportrendering. Du kan behöva summera cpu-förbrukningen.

  • Det finns flera Power BI-objekt och åtgärder som kan vara inblandade i rapportrendering eftersom återgivningar kan ta lång tid. En tidskrävande åtgärd på sidan Tidspunkt kan visas som en lista över åtgärder, där ingen av varaktigheterna är längre än 30 sekunder. Du kan behöva summera processorförbrukningen för återgivningsåtgärder. Genom att sortera efter starttiden kan du visa hela återgivningens historik.

Beräkna maximalt antal återgivningar av rapporten

Använd den här formeln för att beräkna maximalt antal samtidiga rapportåtergivningar som en kapacitet kan hantera innan den överbelastas.

$ \text {max concurrent report renders} = {\text {number of capacity SKU cores} \times {30} \over \text {your report's CPU processing time (in seconds)}} $

Beräkna det maximala antalet användare

Med hjälp av den uppskattade samtidigheten på fem procent för korrelationen mellan antalet totala användare och de maximala samtidiga återgivningarna kan du få det totala antalet användare som en SKU kan hantera.

$ \text {max SKU users} = {\text {max concurrent report renders} \over 0.05} $

Beräkna kapacitetsresurser för flera rapporter

Du kan använda en utökad formel för att uppskatta den kapacitet som behövs för olika rapportanvändningar.

Ladda upp flera sidnumrerade rapporter med olika antal dagliga återgivningar och använd måttappen för att få den genomsnittliga processorbearbetningstiden för var och en. Summan av alla rapportåtergivningar per dag ska vara lika med 100 %. Använd den här formeln när du har all information.

$ \text {max concurrent report renders} = {\text {number of capacity SKU cores} \times {30} \over {\text {A renders} \times \text {A processing time}} + \text {B renders} \times \text {B processing time} + \text {...} + \text{N renders} \times \text{N processing time}}$

Exempel

Det här avsnittet innehåller två exempel, ett för den vanliga beräkningen och ett annat för den avancerade beräkningen.

Regelbunden beräkning

Anta att du kör en sidnumrerad rapport på en F64 - eller P1-SKU som har åtta kärnor. Den totala CPU-användningen för 10 körningar är 40 sekunder, så den genomsnittliga CPU-tiden per rapporter är fyra sekunder.

$ 60 = {8 \times {30} \over 4} $

När du använder den andra formeln får du högst 1 200 användare.

$ 1 200 = {60 \över 0,05} $

För F128 - eller P2-SKU :er kan du multiplicera dessa tal med två eftersom kapaciteten har dubbelt så många CPU-kärnor.

Avancerad beräkning

Anta att du har tre sidnumrerade rapporter med den dagliga återgivningsprocenten i tabellen nedan.

Report Antal renderade rapporter per dag Processorbearbetningstid (i sekunder)
A 60% 4
F 30 % 10
C 10 % 20

Formlerna för en F64 - eller P1-SKU är:

Värde Formel
Maximalt antal samtidiga rapportåtergivningar $ ~32.4 = {8 \times {30} \over 0.6 \times{4} + 0.3 \times{10} + 0.1 \times{20}} $
Totalt antal SKU-användare $ ~650 = {32,4 \över 0,05} $