Optimalizálási útmutató a Power BI-hozOptimization guide for Power BI

Az ebben a cikkben olvasható útmutatás alapján optimalizált Power BI-megoldásokat készíthetnek és üzemeltethetnek a fejlesztők és a rendszergazdák.This article provides guidance that enables developers and administrators to produce and maintain optimized Power BI solutions. Különböző architekturális rétegek szintjén optimalizálhatók a megoldások.You can optimize your solution at different architectural layers. A rétegek az alábbiakat foglalják magukban:Layers include:

  • Az adatforrás(ok)The data source(s)
  • Az adatmodellThe data model
  • Vizualizációk, köztük irányítópultok, Power BI-jelentések és többoldalas Power BI-jelentésekVisualizations, including dashboards, Power BI reports, and Power BI paginated reports
  • A környezet, beleértve a funkciókat, az adatátjárókat és a hálózatotThe environment, including capacities, data gateways, and the network

Az adatmodell optimalizálásaOptimizing the data model

Az adatmodellre épül a teljes vizualizációs környezet.The data model supports the entire visualization experience. Az adatmodellek külső vagy belső üzemeltetésűek lehetnek, és a Power BI-ban adatkészleteknek hívjuk őket.Data models are either external-hosted or internal-hosted, and in Power BI they are referred to as datasets. Fontos, hogy megértse a lehetőségeket, és hogy a saját megoldásához illő adatkészlettípust válassza.It's important to understand your options, and to choose the appropriate dataset type for your solution. Három adatkészletmódot különböztetünk meg: Importálás, DirectQuery és Összetett.There are three dataset modes: Import, DirectQuery, and Composite. További információt az Adatkészletek a Power BI szolgáltatásban és az Adatkészletmódok a Power BI szolgáltatásban című témakörben talál.For more information, see Datasets in the Power BI service, and Dataset modes in the Power BI service.

Az egyes adatkészletmódokhoz itt talál útmutatást:For specific dataset mode guidance, see:

Vizualizációk optimalizálásaOptimizing visualizations

A Power BI vizualizációi lehetnek irányítópultok, Power BI-jelentések vagy többoldalas Power BI-jelentések.Power BI visualizations can be dashboards, Power BI reports, or Power BI paginated reports. Mindegyiknek más és más az architektúrája, ezért mindegyikhez külön útmutatót készítettünk.Each has different architectures, and so each has their own guidance.

IrányítópultokDashboards

Fontos tudni, hogy a Power BI gyorsítótárazza az irányítópult-csempéket, kivéve az élő jelentéscsempéket és a streamelési csempéket.It's important to understand that Power BI maintains a cache for your dashboard tiles—except live report tiles, and streaming tiles. További információt az Adatfrissítés a Power BI-ban című témakör Csempék frissítése című szakasza tartalmaz.For more information, see Data refresh in Power BI (Tile refresh). Ha dinamikus sorszintű biztonságot (RLS) követel meg az adatkészlet, mindenképpen tisztában kell lennie a teljesítményre gyakorolt hatásokkal, mert a csempék gyorsítótárazása felhasználónként fog történni.If your dataset enforces dynamic row-level security (RLS), be sure to understand performance implications as tiles will cache on a per-user basis.

Amikor élő jelentéscsempéket tűz ki valamelyik irányítópultra, akkor nem a lekérdezési gyorsítótárból történik a kiszolgálásuk.When you pin live report tiles to a dashboard, they're not served from the query cache. Ehelyett jelentésekként viselkednek, és menet közben küldenek lekérdezéseket a háttérbeli magoknak.Instead, they behave like reports, and make queries to back-end cores on the fly.

Ahogy azt a neve alapján sejtheti, az adatok gyorsítótárból történő beolvasása jobb és egységesebb teljesítményt nyújt, mintha közvetlenül az adatforrásra támaszkodna.As the name suggests, retrieving the data from the cache provides better and more consistent performance than relying on the data source. E funkcionalitás kihasználásának egyik módja, ha az irányítópultokat kezdőlapként állítja be a felhasználók számára.One way to take advantage of this functionality is to have dashboards be the first landing page for your users. A gyakran használt és sokak által igényelt vizualizációkat rögzítse az irányítópultokra.Pin often-used and highly requested visuals to the dashboards. Ily módon az irányítópultok értékes „első védelmi vonalként” működnek, amely egységes teljesítményt biztosít, kevésbé csökkentve a kapacitást.In this way, dashboards become a valuable "first line of defense", which delivers consistent performance with less load on the capacity. A részletek elemzése céljából a felhasználók továbbra is átkattinthatnak bármely jelentésre.Users can still click through to a report to analyze details.

A DirectQuery módú és az élő kapcsolatot használó adatkészletek esetén a gyorsítótár rendszeres időközönként frissül az adatforrás lekérdezésével.For DirectQuery and live connection datasets, the cache is updated on a periodic basis by querying the data source. A frissítés alapértelmezés szerint óránként történik, de ettől eltérő gyakoriságot is beállíthat az adatkészlet-beállítások között.By default, it happens every hour, though you can configure a different frequency in the dataset settings. A gyorsítótár minden egyes frissítése lekérdezéseket küld az alapul szolgáló adatforrásnak, hogy az frissítse a gyorsítótárt.Each cache update will send queries to the underlying data source to update the cache. A generált lekérdezések számát az határozza meg, hogy hány olyan vizualizáció van az irányítópultokon rögzítve, amely az adott adatforrásra támaszkodik.The number of queries that generate depends on the number of visuals pinned to dashboards that rely on the data source. Tartsa szem előtt, hogy ha engedélyezve van a sorszintű biztonság, a rendszer minden egyes biztonsági környezethez külön lekérdezéseket generál.Notice that if row-level security is enabled, queries are generated for each different security context. Tegyük fel például, hogy két különböző szerepkör kategorizálja a felhasználókat, és két különböző nézetben jelenítik meg az adatokat.For example, consider there are two different roles that categorize your users, and they have two different views of the data. A Power BI két lekérdezéskészletet hoz létre a lekérdezési gyorsítótár frissítése közben.During query cache refresh, Power BI generates two sets of queries.

Power BI-jelentésekPower BI reports

Több javaslat is született a Power BI-jelentéstervek optimalizálására.There are several recommendations for optimizing Power BI report designs.

Megjegyzés

Ha DirectQuery típusú adatkészleten alapulnak a jelentések, akkor az Útmutató a DirectQuery-modellhez a Power BI Desktopban című témakör Jelentéstervek optimalizálása című szakaszában talál további jelentésterv-optimalizálási tudnivalókat.When reports are based on a DirectQuery dataset, for additional report design optimizations, see DirectQuery model guidance in Power BI Desktop (Optimize report designs).

A legszigorúbb szűrők alkalmazásaApply the most restrictive filters

Minél több adatot jelenítenek meg a vizualizációk, annál lassabban töltődnek be.The more data that a visual needs to display, the slower that visual is to load. Még ha ez nyilvánvalónak is tűnik, könnyű megfeledkezni róla.While this principle seems obvious, it's easy to forget. Tegyük fel például, hogy egy nagyméretű adathalmazon dolgozik,For example: suppose you have a large dataset. amelynek alapján készít egy táblát tartalmazó jelentést.Atop of that dataset, you build a report with a table. A végfelhasználók szeletelőkkel szűrnek rá a kívánt sorokra a lapon, és jellemzően csak néhány tucatnyi sor érdekli őket.End users use slicers on the page to get to the rows they want—typically, they're only interested in a few dozen rows.

Gyakori hiba ilyen esetben, hogy a tábla alapértelmezett nézete szűretlen marad, vagyis az összes (akár több mint százmillió) sort tartalmazza.A common mistake is to leave the default view of the table unfiltered—that is, all 100M+ rows. A rendszer ezeknek a soroknak az adatait minden egyes frissítéskor betölti a memóriába, majd kitömöríti.The data for these rows loads into memory and is uncompressed at every refresh. Ez a feldolgozási folyamat óriási memóriahasználattal jár.This processing creates huge demands for memory. A megoldás az, hogy a Top N szűrőt használva csökkenteni kell a táblában maximálisan megjeleníthető elemek számát.The solution: use the "Top N" filter to reduce the max number of items that the table displays. A maximális elemszám lehet a felhasználók által jellemzően igényelt sorszámnál magasabb is, például 10 000.You can set the max item to larger than what users would need, for example, 10,000. Ennek eredményeként a végfelhasználói élmény nem változik, a memóriahasználat azonban jelentősen csökken.The result is the end-user experience doesn't change, but memory use drops greatly. A legfontosabb pedig az, hogy javul a teljesítmény.And most importantly, performance improves.

A jelentésben található összes vizualizációhoz ajánlott az előzőekhez hasonló tervezési megközelítést használni.A similar design approach to the above is suggested for every visual in your report. Mindig tegye fel a kérdést: Minden adatra szükség van ebből a vizualizációból?Ask yourself, is all the data in this visual needed? Szűrhető a megjelenített adatmennyiség úgy, hogy az csak minimálisan befolyásolja a végfelhasználói élményt?Are there ways to filter the amount of data shown in the visual with minimal impact to the end-user experience? Ne feledje, hogy a táblák különösen teljesítményigényesek lehetnek.Remember, tables in particular can be expensive.

A jelentéslapokon megjelenő vizualizációk számának korlátozásaLimit visuals on report pages

A fenti elv a jelentéslapokon elhelyezett vizualizációk számára nézve is ugyanúgy igaz.The above principle applies equally to the number of visuals added to a report page. Kifejezetten javasolt, hogy az egyes jelentéslapokon csak annyi vizualizációt jelenítsen meg, amennyi valóban szükséges.It's highly recommended you limit the number of visuals on a particular report page to only what is necessary. A részletező lapok és a jelentéslapok elemleírásai nagyszerű megoldást kínálnak arra, hogy további részleteket jeleníthessen meg anélkül, hogy még több vizualizációt zsúfolna a lapra.Drillthrough pages and report page tooltips are great ways to provide additional details without jamming more visuals onto the page.

Egyéni vizualizációk teljesítményének kiértékeléseEvaluate custom visual performance

Tesztelje az összes egyéni vizualizációt annak megállapításához, hogy biztosan megfelelő teljesítményt nyújtanak-e.Be sure to put each custom visual through its paces to ensure high performance. A rosszul optimalizált Power BI-vizualizációk a teljes jelentés teljesítményére negatív hatással lehetnek.Poorly optimized Power BI visuals can negatively affect the performance of the entire report.

Többoldalas Power BI-jelentésekPower BI paginated reports

A többoldalas Power BI-jelentések terveinek optimalizálásához felhasználhatja az ajánlott eljárások szerint készült tervet a jelentés adatlekérési fázisához.Power BI paginated report designs can be optimized by applying best practice design to the report's data retrieval. További információt az Adatlekérési útmutató többoldalas jelentésekhez című témakörben talál.For more information, see Data retrieval guidance for paginated reports.

Győződjön meg arról is, hogy elegendő memóriát foglalt le a többoldalas jelentések számítási feladataihoz.Also, ensure your capacity has sufficient memory allocated to the paginated reports workload.

A környezet optimalizálásaOptimizing the environment

A kapacitásbeállítások konfigurálásával, az adatátjárók méretezésével és a hálózati késés csökkentésével optimalizálhatja a Power BI-környezetet.You can optimize the Power BI environment by configuring capacity settings, sizing data gateways, and reducing network latency.

KapacitásbeállításokCapacity settings

Ha kapacitásokat használ (a Power BI Premium szolgáltatás P jelű termékváltozataival vagy a Power BI Embedded szolgáltatás A jelű (A4–A6) termékváltozataival), kezelheti a kapacitásbeállításokat.When using capacities—available with Power BI Premium (P SKUs), or Power BI Embedded (A SKUs, A4-A6)—you can manage capacity settings. További információ: Prémium szintű kapacitások kezelése.For more information, see Managing Premium capacities. A kapacitás optimalizálásához a Prémiumszintű kapacitások optimalizálása című témakörben talál útmutatást.For guidance on how to optimize your capacity, see Optimizing Premium capacities.

Átjárók méretezéseGateway sizing

Átjáróra akkor van szükség, amikor az interneten közvetlenül nem elérhető adatokhoz kell hozzáférnie a Power BI-nak.A gateway is required whenever Power BI must access data that isn't accessible directly over the Internet. A helyszíni adatátjárót helyszíni kiszolgálón és virtuális gépen üzemelő IaaS-környezetekben egyaránt telepítheti.You can install the on-premises data gateway on a server on-premises, or VM-hosted Infrastructure-as-a-Service (IaaS).

Ha tisztában szeretne lenni az átjárók számítási feladataival és a méretezési javaslatokkal, olvassa el a Helyszíni adatátjáró méretezése című témakört.To understand gateway workloads and sizing recommendations, see On-premises data gateway sizing.

Hálózati késésNetwork latency

A hálózati késés hatással van a jelentések teljesítményére, hiszen megnöveli azt az időt, amely a kérések Power BI szolgáltatásba való eljuttatásához, illetve a válaszok kézbesítéséhez szükséges.Network latency can impact report performance by increasing the time required for requests to reach the Power BI service, and for responses to be delivered. A Power BI-bérlők konkrét régióhoz vannak társítva.Tenants in Power BI are assigned to a specific region.

Tipp

A Hol található a Power BI-bérlőm? című témakörből megtudhatja, hogy hol üzemel a bérlője.To determine where your tenant is located, see Where is my Power BI tenant located?

Amikor egy bérlő felhasználói hozzáférnek a Power BI szolgáltatáshoz, a kéréseiket a rendszer mindig ehhez a régióhoz irányítja.When users from a tenant access the Power BI service, their requests always route to this region. A kérések Power BI szolgáltatásba érkezésekor a szolgáltatás további kéréseket küldhet (például az alapul szolgáló adatforrásnak vagy egy adatátjárónak), amelyekre szintén érvényes a hálózati késés.As requests reach the Power BI service, the service may then send additional requests—for example, to the underlying data source, or a data gateway—which are also subject to network latency.

Bizonyos eszközök, például az Azure Speed Test, segíthetnek megállapítani, hogy mekkora a hálózati késés az ügyfél és az Azure-régió között.Tools such as Azure Speed Test provide an indication of network latency between the client and the Azure region. A hálózati késés hatásának minimalizálásához általánosságban igyekezzen minél közelebb tartani egymáshoz az adatforrásokat, az átjárókat és a Power BI-fürtöt.In general, to minimize the impact of network latency, strive to keep data sources, gateways, and your Power BI cluster as close as possible. Lehetőség szerint legyenek ugyanabban a régióban.Preferably, they reside within the same region. Ha problémát okoz a hálózati késés, próbálja meg közelebb helyezni a Power BI-fürthöz az átjárókat és az adatforrásokat azzal, hogy felhőbeli virtuális gépeken helyezi el őket.If network latency is an issue, try locating gateways and data sources closer to your Power BI cluster by placing them inside cloud-hosted virtual machines.

TeljesítményfigyelésMonitoring performance

A teljesítmény figyelésével azonosíthatja a szűk keresztmetszeteket.You can monitor performance to identify bottlenecks. A folytatólagos optimalizálás során kiemelt figyelmet igényelnek a lassú lekérdezések (vagy a jelentésekben szereplő vizualizációk).Slow queries—or report visuals—should be a focal point of continued optimization. A figyelés történhet a Power BI Desktopban tervezéskor, vagy a Power BI Premium kapacitásaiban végzett éles számítási feladatok közben.Monitoring can be done at design time in Power BI Desktop, or on production workloads in Power BI Premium capacities. További információt a Jelentések teljesítményének figyelése a Power BI-ban című témakör tartalmaz.For more information, see Monitoring report performance in Power BI.

Következő lépésekNext steps

Erről a cikkről a következő forrásanyagokban talál további információt:For more information about this article, check out the following resources: