Kapacitástervezési útmutató Power BI jelentéskészítő kiszolgáló
Power BI jelentéskészítő kiszolgáló egy önkiszolgáló BI- és vállalati jelentéskészítési megoldás, amelyet az ügyfelek a tűzfaluk mögött helyezhetnek üzembe a helyszínen. Egyesíti a Power BI Desktop interaktív jelentéskészítési képességét az SQL Server Reporting Services helyszíni kiszolgálóplatformjával. A nagyvállalati elemzések és jelentéskészítés egyre nagyobb mértékű használata esetén a nagyvállalati felhasználói bázisra való skálázáshoz szükséges hardverinfrastruktúra és szoftverlicencek költségvetése kihívást jelenthet. A tanulmány célja, hogy útmutatást nyújtson a Power BI jelentéskészítő kiszolgáló kapacitástervezéséhez a különböző számítási feladatok számos terheléstesztjének eredményeinek jelentéskészítő kiszolgálón való megosztásával. Bár a szervezetek jelentései, lekérdezései és használati mintái nagyban eltérnek egymástól, az ebben a dokumentumban bemutatott eredmények, valamint a ténylegesen használt tesztek és a végrehajtásuk részletes leírása referenciapontként szolgálnak a Power BI jelentéskészítő kiszolgáló üzembe helyezésének korai szakaszában.
Összefoglaló
Két különböző típusú számítási feladatot hajtottunk végre Power BI jelentéskészítő kiszolgáló; mindegyik számítási feladat különböző típusú jelentések megjelenítéséből, valamint különböző webes portálműveletek végrehajtásából állt.
- A "Power BI Report Heavy" számítási feladatban a leggyakrabban végrehajtott művelet (azaz az idő 60%-ában végrehajtott művelet) Power BI-jelentéseket renderelt.
- A "Többoldalas jelentés nehéz" számítási feladatban a leggyakrabban végrehajtott művelet a lapszámozott jelentések renderelése volt.
A Power BI jelentéskészítő kiszolgáló négykiszolgálós topológiája és az a várakozás, hogy a felhasználók legfeljebb 5%-a fér hozzá egyszerre egy jelentéskészítő kiszolgálóhoz, az alábbi táblázat azt a maximális számú felhasználót ismerteti, Power BI jelentéskészítő kiszolgáló legalább 99%-os megbízhatósággal tudja kezelni.
Számítási feladat | 8 Mag/32 GB RAM | 16 Mag/64 GB RAM |
---|---|---|
Power BI-jelentés nehéz (>60%) | 1000 felhasználó | 3000 felhasználó |
Többoldalas (RDL) jelentés nehéz (>60%) | 2000 felhasználó | 3200 felhasználó |
Minden futtatás során a leginkább túlterhelt erőforrás a CPU volt. Emiatt a magok számának Power BI jelentéskészítő kiszolgáló növelése nagyobb nyereséget eredményezne a rendszer megbízhatóságában, mint a memória vagy a merevlemez-terület növelése.
Tesztelési módszertan
A használt tesztelési topológia gyártóspecifikus fizikai hardver helyett a Microsoft Azure-beli virtuális gépeken alapult. Az összes gépet az USA régióiban üzemeltették. Ez a hardvervirtualizálás általános trendjének felel meg mind a helyszíni, mind a nyilvános felhőben.
Power BI jelentéskészítő kiszolgáló topológia
A Power BI jelentéskészítő kiszolgáló üzembe helyezése a következő virtuális gépekből állt:
- Active Directory-tartomány vezérlő: erre az SQL Server adatbázismotor, az SQL Server Analysis Services és a Power BI jelentéskészítő kiszolgáló volt szükség az összes kérés biztonságos hitelesítéséhez.
- SQL Server Adatbázismotor és SQL Server Analysis Services: itt tároltuk a jelentésekhez használt összes adatbázist a rendereléskor.
- Power BI jelentéskészítő kiszolgáló
- Power BI jelentéskészítő kiszolgáló adatbázis. A jelentéskészítő kiszolgáló adatbázisa a Power BI jelentéskészítő kiszolgáló-nél más gépen van üzemeltetve, így nem kell versenyeznie az SQL Server adatbázismotorjával a memória-, a CPU-, a hálózati és a lemezerőforrásokért.
A topológiában használt összes virtuális gép részletes konfigurálásához lásd az 1.1. függelék Power BI jelentéskészítő kiszolgáló topológiáját és az 1.2. függeléket Power BI jelentéskészítő kiszolgáló virtuális gépek konfigurációját.
Tesztek
A terheléses tesztfuttatásokban használt tesztek nyilvánosan elérhetők a Reporting Services LoadTest nevű GitHub-projektben. Ez az eszköz lehetővé teszi a felhasználók számára az SQL Server Reporting Services és Power BI jelentéskészítő kiszolgáló teljesítményének, megbízhatóságának, méretezhetőségének és helyreállíthatósági jellemzőinek tanulmányozását. Ez a projekt négy tesztesetcsoportból áll:
- Power BI-jelentések renderelését szimuláló tesztek,
- Mobiljelentések renderelését szimuláló tesztek,
- Kis és nagy lapszámozott jelentések renderelését szimuláló tesztek, és
- Különböző típusú webportál-műveleteket szimuláló tesztek.
Az összes teszt egy teljes körű művelet végrehajtására lett megírva (például jelentés renderelése, új adatforrás létrehozása stb.). Ezt úgy hajtják végre, hogy egy vagy több webes kérést küldenek a jelentéskészítő kiszolgálónak (API-kon keresztül). A valós világban előfordulhat, hogy a felhasználónak néhány köztes műveletet kell végrehajtania ezeknek a végpontok közötti műveleteknek a elvégzéséhez. Ha például egy jelentést szeretne megjeleníteni, a felhasználónak a webes portálra kell lépnie, keresse meg azt a mappát, amelyben a jelentés található, majd kattintson a jelentésre a megjelenítéshez. Bár a tesztek nem hajtanak végre minden olyan műveletet, amely egy teljes körű feladat végrehajtásához szükséges, mégis a Power BI jelentéskészítő kiszolgáló által tapasztalt terhelés nagy részét terhelik. A GitHub-projekt feltárásával többet is megtudhat a különböző típusú jelentésekről, valamint az elvégzett műveletek változatosságáról.
Megjegyzés:
Az eszközt hivatalosan nem támogatja a Microsoft, de a termékcsapat hozzájárul a projekthez, és megválaszolja a más közreműködők által felvetett problémákat.
Számítási feladatok
A teszteléshez 2 számítási feladatprofilt használnak: a Power BI Jelentés nehéz és a Többoldalas jelentés nehéz. Az alábbi táblázat a jelentéskészítő kiszolgálón végrehajtott kérelmek elosztását ismerteti.
Tevékenys. | Power BI-jelentés – Nehéz, előfordulás gyakorisága | Többoldalas jelentés nagy száma, előfordulás gyakorisága |
---|---|---|
Power BI-jelentések renderelése | 60% | 10% |
Lapszámozott (RDL-) jelentések renderelése | 30% | 60% |
Mobiljelentések renderelése | 5% | 20% |
Webportál műveletei | 5% | 10% |
Felhasználói terhelés
Minden tesztfuttatáshoz a teszteket a két számítási feladat egyikében megadott gyakoriság alapján hajtották végre. A tesztek 20 egyidejű felhasználói kéréssel kezdődtek a jelentéskészítő kiszolgáló felé. Ezt követően fokozatosan növelték a felhasználói terhelést, amíg a megbízhatóság a 99%-os cél alá nem csökkent.
Results (Eredmények)
Egyidejű felhasználói kapacitás
Ahogy korábban említettem, a tesztek 20 egyidejű felhasználóval kezdődtek, és kéréseket intéztek a jelentéskészítő kiszolgálóhoz. Az egyidejű felhasználók száma ezután fokozatosan növekedett, amíg az összes kérés 1%-a sikertelen volt. Az alábbi táblázatban szereplő eredmények azt jelzik, hogy hány egyidejű felhasználói kérést képes kezelni a kiszolgáló csúcsterhelés mellett, és a hibaarány kisebb, mint 1%.
Számítási feladat | 8 Mag/32 GB | 16 Mag/64 GB |
---|---|---|
Power BI-jelentés – nehéz | 50 egyidejű felhasználó | 150 egyidejű felhasználó |
Többoldalas jelentés nehéz | 100 egyidejű felhasználó | 160 egyidejű felhasználó |
Teljes felhasználói kapacitás
A Microsoftnál éles környezetben üzembe helyeztük a Power BI jelentéskészítő kiszolgáló, amelyet több csapat is használt. A környezet tényleges használatának elemzésekor megfigyeljük, hogy az egyidejű felhasználók száma egy adott időpontban (még a napi csúcsterhelés során is) általában nem haladja meg a teljes felhasználói bázis 5%-át. Ezt az 5%-os egyidejűségi arányt viszonyítási alapként használva extrapoláltuk a teljes felhasználói bázist, Power BI jelentéskészítő kiszolgáló 99%-os megbízhatósággal kezelhető.
Számítási feladat | 8 Mag/32 GB | 16 Mag/64 GB |
---|---|---|
Power BI-jelentés – nehéz | 1000 felhasználó | 3000 felhasználó |
Többoldalas jelentés nehéz | 2000 felhasználó | 3200 felhasználó |
Összefoglalás
Az egyes terheléstesztek futtatásakor a cpu volt a legnagyobb terhelésű erőforrás a Power BI jelentéskészítő kiszolgáló gép csúcsterhelésének időpontjában. Emiatt az első növelendő erőforrás a magok száma. Másik lehetőségként megfontolhatja a horizontális felskálázást, ha további Power BI jelentéskészítő kiszolgáló üzemeltető kiszolgálókat ad hozzá a topológiához.
Az ebben a dokumentumban bemutatott eredmények abból származnak, hogy egy adott adathalmazt használó jelentések meghatározott halmazát hajtják végre, meghatározott módon megismételve. Hasznos referenciapont, de ne feledje, hogy a használat a jelentésektől, a lekérdezésektől, a használati mintáktól és a Power BI jelentéskészítő kiszolgáló üzembe helyezésétől függ.
Függelék
1 Topológia
1.1 Power BI jelentéskészítő kiszolgáló topológia
A különböző konfigurációkban Power BI jelentéskészítő kiszolgáló viselkedésre való összpontosításhoz az egyes géptípusok virtuálisgép-konfigurációja (kivéve a Power BI jelentéskészítő kiszolgáló üzemeltető gépet) rögzítették. Mindegyik gép a második generációs (v2) D sorozatú, Prémium szintű tárolólemezekkel rendelkező gépeknek megfelelően lett kiépítve. Az egyes virtuálisgép-méretekről az "Általános célú" szakaszban talál részletes információkat.
Virtuális gép típusa | Adatfeldolgozó | Memory (Memória) | Azure-beli virtuális gép mérete |
---|---|---|---|
Active Directory-tartomány vezérlő | 2 mag | 7 GB | Standard_DS2_v2 |
SQL Server Adatbázismotor és Analysis Services | 16 mag | 56 GB | Standard_DS5_v2 |
Jelentéskészítő kiszolgáló adatbázisa | 16 mag | 56 GB | Standard_DS5_v2 |
1.2 Power BI jelentéskészítő kiszolgáló virtuális gép konfigurációja
A processzor és a memória különböző konfigurációit használták a Power BI jelentéskészítő kiszolgáló üzemeltető virtuális géphez. A többi virtuális géptől eltérően ez a gép a harmadik generációs (v3) D sorozatú, prémium szintű tárolólemezekkel rendelkező gépeknek megfelelően lett kiépítve. Erről a virtuálisgép-méretről az "Általános célú" szakaszban talál részletes információt
Virtuális gép | Adatfeldolgozó | Memory (Memória) | Azure-beli virtuális gép mérete |
---|---|---|---|
Power BI jelentéskészítő kiszolgáló (kicsi) | 8 mag | 32 GB | Standard_D8S_v3 |
Power BI jelentéskészítő kiszolgáló (nagy) | 16 mag | 64 GB | vStandard_D16S_v3 |
2 A LoadTest eszköz futtatása
Ha futtatni szeretné a Reporting Services LoadTest eszközt a Power BI jelentéskészítő kiszolgáló Microsoft Azure-beli üzembe helyezésén, kövesse az alábbi lépéseket.
- Klónozza a Reporting Services LoadTest-projektet a GitHubról (https://github.com/Microsoft/Reporting-Services-LoadTest).
- A projektkönyvtárban talál egy RSLoadTests.sln nevű megoldásfájlt. Nyissa meg ezt a fájlt a Visual Studio 2015-ben vagy újabb verziójában.
- Állapítsa meg, hogy az eszközt a Power BI jelentéskészítő kiszolgáló telepítése vagy Power BI jelentéskészítő kiszolgáló a Microsoft Azure-ban való üzembe helyezése ellen szeretné-e futtatni. Ha a saját üzembe helyezésével szeretné futtatni, folytassa az 5. lépéssel.
- Kövesse a felsorolt https://github.com/Microsoft/Reporting-Services-LoadTest#create-a-sql-server-reporting-services-load-environment-in-azure utasításokat egy Power BI jelentéskészítő kiszolgáló-környezet Azure-ban való létrehozásához.
- Miután befejezte a környezet üzembe helyezését, kövesse a felsorolt https://github.com/Microsoft/Reporting-Services-LoadTest#load-test-execution utasításokat a tesztek futtatásához.
Van még esetleg kérdése? Kérdezze meg a Power BI-közösség
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: