Jaa


Power BI -raporttipalvelin koskevia kapasiteetin suunnitteluohjeita

Power BI -raporttipalvelin on omatoiminen liiketoiminta- ja yritysraportointiratkaisu, jota asiakkaat voivat käyttää paikallisesti palomuurin takana. Siinä yhdistyvät Power BI Desktopin vuorovaikutteinen raporttiominaisuus ja paikallinen SQL Server Reporting Services -palvelinympäristö. Yritysten raskas ja kasvava analytiikan käyttö ja raportointi ja yrityksen käyttäjäkannan skaalaamiseen tarvittavan laitteisto-infrastruktuurin ja ohjelmistolisenssien budjetointi voi olla haastavaa. Tämän artikkelin tarkoituksena on antaa ohjeita kapasiteetin suunnitteluun Power BI -raporttipalvelin jakamalla eri kuormituksille suoritettujen lukuisten kuormitustestien tuloksia raporttipalvelinta vastaan. Organisaatioiden raportit, kyselyt ja käyttötavat vaihtelevat suuresti, mutta tässä artikkelissa esitetyt tulokset yhdessä varsinaisten testien ja niiden suorittamistapojen yksityiskohtaisen kuvauksen kanssa toimivat vertailukohtana kaikille, jotka ovat alkuvaiheen suunnitteluprosessissa Power BI -raporttipalvelin käyttöönottamiseksi.

Tiivistelmä

Suoritimme kahdenlaisia kuormituksia Power BI -raporttipalvelin vasten. Jokainen kuormitus muodostui erityyppisten raporttien hahmontamisesta ja erilaisista verkkoportaalitoiminnoista.

  • Raskas Power BI -raportti -kuormituksessa useimmin suoritettu toiminto (eli toimintoa suoritettiin 60 % ajasta) oli Power BI -raporttien hahmontaminen.
  • Raskas sivutettu raportti -kuormituksessa useimmin suoritettu toiminto oli sivutettujen raporttien hahmontaminen.

Seuraavassa taulukossa kuvataan käyttäjien enimmäismäärä, jonka Power BI -raporttipalvelin pystyy käsittelemään vähintään 99 prosentin luotettavuudella. Tämä pätee neljän palvelimen topologian eli Power BI -raporttipalvelin ja odotuksen mukaan, että enintään 5 prosenttia käyttäjistä käyttää raporttipalvelinta samanaikaisesti.

Työmäärä 8 ydintä / 32 Gt:n RAM-muisti 16 ydintä / 64 Gt:n RAM-muisti
Raskas Power BI -raportti (>60 %) 1 000 käyttäjää 3 000 käyttäjää
Raskas sivutettu (RDL) -raportti (>60 %) 2 000 käyttäjää 3 200 käyttäjää

Jokaisessa ajossa kuormittunein resurssi oli suoritin. Tämän vuoksi Power BI -raporttipalvelin ytimien määrän lisääminen tuottaisi järjestelmän paremman luotettavuuden voiton kuin muistin tai kiintolevytilan lisääminen.

Testausmenetelmät

Käytetty testaustopologia perustui Microsoft Azure -Näennäiskoneet toimittajakohtaisten fyysisten laitteistojen sijaan. Kaikkia koneita isännöitiin Yhdysvaltain alueilla. Tämä kuvastaa sekä paikallisen että julkisen pilvipalvelun laitteiston virtualisoinnin yleistä trendiä.

Power BI -raporttipalvelin topologia

Power BI -raporttipalvelin käyttöönotto muodostui seuraavista näennäiskoneista:

  • Active Directory -toimialueen ohjauskone: SQL Server -tietokantamoduuli, SQL Server Analysis Services ja Power BI -raporttipalvelin tarvitsivat tätä, jotta kaikki pyynnöt voidaan todentaa turvallisesti.
  • SQL Server -tietokantamoduuli ja SQL Server Analysis Services: näissä tallennetaan kaikki raportit, joita käytimme hahmontamiseen.
  • Power BI Report Server
  • Power BI -raporttipalvelin Database. Raporttipalvelimen tietokantaa isännöidään eri koneella kuin Power BI -raporttipalvelin siten, ettei sen tarvitse kilpailla SQL Server -tietokantamoduulin kanssa muistista, suorittimesta, verkosta ja levyresursseista.

Diagram showing relationships between Power B I Report Server, Active Directory, and associated databases.

Katso topologiassa käytettyjen näennäiskoneiden tarkemmat kokoonpanot liitteestä 1.1 Power BI -raporttipalvelin topologia ja liitteestä 1.2 Power BI -raporttipalvelin.

Testit

Kuormitustestisuoreissa käytetyt testit ovat julkisesti käytettävissä GitHub-projektissa, jonka nimi on Reporting Services LoadTest. Tämän työkalun avulla käyttäjät voivat tutkia SQL Server Reporting Servicesin ja Power BI -raporttipalvelin suorituskyky-, luotettavuus-, skaalautuvuus- ja palautettavuusominaisuuksia. Tämä projekti koostuu neljästä testitapausryhmästä:

  • testit, jotka simuloivat Power BI -raporttien hahmontamista
  • testit, jotka simuloivat mobiiliraporttien hahmontamista
  • testit, jotka simuloivat pienten ja suurten sivutettujen raporttien hahmontamista
  • testit, jotka simuloivat erityyppisten verkkoportaalitoimintojen suorittamista.

Kaikki testit kirjoitettiin suorittamaan päästä päähän -toiminto (kuten raportin hahmontaminen, uuden tietolähteen luominen jne.). Ne tekevät tämän tekemällä yhden tai useamman verkkopyynnön raporttipalvelimelle (ohjelmointirajapintojen kautta). Todellisissa tilanteissa käyttäjän saattaa olla tarpeen suorittaa joitakin välitoimintoja suorittaakseen jonkin näistä päästä päähän -toiminnoista. Esimerkiksi hahmontaakseen raportin käyttäjän täytyy siirtyä verkkoportaaliin, siirtyä raportin tallennuskansioon ja napsauttaa sitten raporttia. Vaikka testeissä ei tehdä kaikkia toimintoja, joita päästä päähän -tehtävän suorittaminen edellyttää, ne kuitenkin aiheuttavat suurimman osan kuormituksesta, joka Power BI -raporttipalvelin tulisi vastaan. Tutustumalla GitHub-projektiin saat lisätietoja erilaisista käytetyistä raporttityypeistä ja suoritetuista toiminnoista.

Muistiinpano

Microsoft ei tue työkalua virallisesti, mutta tuotetiimi osallistuu projektiin ja vastaa muiden osallistujien esiin tuomiin ongelmiin.

Kuormitukset

Testauksessa käytetään kahta kuormitusprofiilia: raskas Power BI -raportti ja raskas sivutettu raportti. Alla olevassa taulukossa kuvataan raporttipalvelimen avulla suoritettujen pyyntöjen jakauma.

Aktiviteetti Raskas Power BI -raportti, esiintymistiheys Raskas sivutettu raportti, esiintymistiheys
Power BI -raporttien hahmontaminen 60% 10 %
Sivutettujen (RDL) raporttien hahmontaminen 30 % 60%
Mobiiliraporttien hahmontaminen %5 20 %
Verkkoportaalitoiminnot 5 % 10 %

Käyttäjäkuormitus

Testit suoritettiin jokaisessa testiajossa esiintymistiheyden perusteella, joka on määritetty yhdelle kahdesta kuormituksesta. Testit alkoivat raporttipalvelimelle tehdyllä 20 samanaikaiselta käyttäjäpyynnöllä. Käyttäjäkuormitusta lisättiin sen jälkeen asteittain, kunnes luotettavuus putosi alle 99 prosentin tavoitteen.

Tulokset

Samanaikainen käyttäjäkapasiteetti

Kuten edellä mainittiin, testit alkoivat siten, että raporttipalvelimelle tehtiin 20 samanaikaista käyttäjäpyyntöä. Tämän jälkeen samanaikaisten käyttäjien määrää lisättiin asteittain, kunnes 1 % kaikista pyynnöistä epäonnistui. Seuraavassa taulukossa olevat tulokset kertovat samanaikaisten käyttäjäpyyntöjen määrän, jonka palvelin pystyisi käsittelemään huippukuormituksella pienemmällä virhemäärällä kuin 1 %.

Työmäärä 8 ydintä / 32 Gt 16 ydintä / 64 Gt
Raskas Power BI -raportti 50 samanaikaista käyttäjää 150 samanaikaista käyttäjää
Raskas sivutettu raportti 100 samanaikaista käyttäjää 160 samanaikaista käyttäjää

Kokonaiskäyttäjäkapasiteetti

Microsoftilla on käytössä Power BI -raporttipalvelin, joita useat tiimit käyttivät. Analysoidessamme tämän ympäristön todellista käyttöä havaitsimme, että samanaikaisten käyttäjien määrä ei yleensä milloinkaan (edes päivittäisen huippukuormituksen aikana) ole enempää kuin 5 prosenttia kokonaiskäyttäjäkannasta. Käyttämällä tätä samanaikaisuuden 5 prosentin yhteiskäyttösuhdetta vertailuarvona ekstrapoloimme kokonaiskäyttäjäkannan, Power BI -raporttipalvelin pystyisivät käsittelemään 99 prosentin luotettavuudella.

Työmäärä 8 ydintä / 32 Gt 16 ydintä / 64 Gt
Raskas Power BI -raportti 1 000 käyttäjää 3 000 käyttäjää
Raskas sivutettu raportti 2 000 käyttäjää 3 200 käyttäjää

Yhteenveto

Jokaisessa kuormitustestissä suoritin oli kaikkein kuormittunein resurssi Power BI -raporttipalvelin koneen huippukuormituksen aikana. Tämän vuoksi ydinten määrä on ensimmäinen resurssi, jota tulisi lisätä. Vaihtoehtoisesti voit harkita skaalaamista lisäämällä palvelimia, jotka isännöivät Power BI -raporttipalvelin topologiassasi.

Tässä raportissa esitetyt tulokset saatiin suorittamalla tietty raporttijoukko, jossa käytettiin tiettyä tietojoukkoa ja joka toistettiin tietyllä tavalla. Se on hyödyllinen vertailukohta, mutta muista, että käyttösi riippuu raporteista, kyselyistä, käyttötavoista ja Power BI -raporttipalvelin käyttöönotosta.

Liite

1 Topologia

1.1 Power BI -raporttipalvelin topologia

Jotta keskityttiin pelkästään Power BI -raporttipalvelin toimintaan eri kokoonpanoissa, jokaisen konetyypin (lukuun ottamatta Power BI -raporttipalvelin) näennäiskonekokoonpano oli kiinteä. Jokainen kone valmisteltiin toisen sukupolven (v2) D-sarjan koneiden mukaan, joissa on Premium-Tallennus levyt. Löydät kunkin näennäiskoneen koon lisätiedot Yleiskäyttöä käsittelevästä osiosta.

Näennäiskoneen tyyppi Suoritin Muisti Azure-näennäiskoneen koko
Active Directory -toimialueen ohjauskone 2 ydintä 7 Gt Standard_DS2_v2
SQL Server -tietokantamoduuli ja Analysis Services 16 ydintä 56 Gt Standard_DS5_v2
Raporttipalvelimen tietokanta 16 ydintä 56 Gt Standard_DS5_v2

1.2 Power BI -raporttipalvelin näennäiskoneen määritys

Näennäiskoneen isännöintiin Power BI -raporttipalvelin käytettiin erilaisia suoritin- ja muistikokoonpanoja. Toisin kuin muut näennäiskoneet, tämä kone valmisteltiin kolmannen sukupolven (v3) D-sarjan koneiden mukaisesti, joissa on Premium-Tallennus levyt. Löydät tämän näennäiskoneen koon lisätiedot Yleiskäyttöä käsittelevästä osiosta

Virtuaalikone Suoritin Muisti Azure-näennäiskoneen koko
Power BI -raporttipalvelin (pieni) 8 ydintä 32 Gt Standard_D8S_v3
Power BI -raporttipalvelin (suuri) 16 ydintä 64 Gt vStandard_D16S_v3

2 LoadTest-työkalun suorittaminen

Jos haluat suorittaa Reporting Servicesin LoadTest-työkalun käyttäen sinun tai Microsoft Azuren Power BI -raporttipalvelin käyttöönottoa, toimi seuraavasti.

  1. Kloonaa Reporting Services loadTest -projekti GitHubista (https://github.com/Microsoft/Reporting-Services-LoadTest).
  2. Projektin hakemistossa on ratkaisutiedosto nimeltä RSLoadTests.sln. Avaa tämä tiedosto Visual Studio 2015:ssä tai uudemmassa.
  3. Määritä, haluatko suorittaa työkalun käyttäen Power BI -raporttipalvelin käyttöönottoa vai Power BI -raporttipalvelin Käyttöönottoa Microsoft Azuressa. Jos aiot suorittaa sen omaa käyttöönottoasi vasten, siirry vaiheeseen 5.
  4. Luo Power BI -raporttipalvelin-ympäristö Azuressa noudattamalla ohjeita kohdassa https://github.com/Microsoft/Reporting-Services-LoadTest#create-a-sql-server-reporting-services-load-environment-in-azure .
  5. Kun olet ottanut ympäristön käyttöön, suorita testit noudattamalla ohjeita https://github.com/Microsoft/Reporting-Services-LoadTest#load-test-execution kohdassa .

Onko sinulla lisää kysymyksiä? Voit esittää kysymyksiä Power BI -yhteisö