Overvåke og optimalisere lokal datagatewayytelse

Overvåking av gateway-ytelse (offentlig forhåndsvisning)

Gateway-administratorer har tradisjonelt vært avhengige av manuelt å overvåke ytelsestellere gjennom Windows Performance Monitor-verktøyet for å overvåke ytelsen. Vi tilbyr nå ytterligere spørringslogging og en PBI-malfil for gatewayytelse for å visualisere resultatene. Denne funksjonen gir ny innsikt i gatewaybruk. Du kan bruke den til å feilsøke spørringer med dårlig ytelse.

Merk

Denne funksjonen er for øyeblikket bare tilgjengelig for den lokale datagatewayen i standardmodus. Den er ikke tilgjengelig for den personlige modusen.

Merk

Gateway-diagnostikk registrerer ikke diagnostikk direkte relatert til (virtuell) maskin og nettverket, for eksempel båndbredde eller ventetid. Disse diagnosene kan imidlertid påvirke gatewayens ytelse. Du kan bruke verktøy for ressursovervåking til å overvåke maskinen.

Ytelseslogging

Denne funksjonen er nå aktivert som standard.

Merk

  • Spørringer fra Premium-kapasitet til gatewayen går noen ganger glipp av denne loggingen. Vi jobber aktivt med å løse dette problemet.
  • Power BI-sideformaterte rapportspørringer logges for øyeblikket ikke ved hjelp av dette verktøyet.

Konfigurer ytelseslogging

Det finnes andre verdier i konfigurasjonsfilen C:\Program Files\On-premises data gateway\Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config som du kan oppdatere etter behov:

  • ReportFilePath: Bestemmer banen der de fire loggfilene er lagret. Som standard er denne banen enten \Users\PBIEgwService\AppData\Local\Microsoft\On-premises data gateway\Report or \Windows\ServiceProfiles\PBIEgwService\AppData\Local\Microsoft\On-premises data gateway\Report. Banen avhenger av OS-versjonen. Hvis du bruker en tjenestekonto for gatewayen annet enn PBIEgwService, erstatter du denne delen av banen med navnet på tjenestekontoen.
  • ReportFileCount: Bestemmer antall loggfiler av hver type som skal beholdes. Standardverdien er 10.
  • ReportFileSizeInBytes: Bestemmer størrelsen på filen som skal vedlikeholdes. Standardverdien er 104 857 600.
  • QueryExecutionAggregationTimeInMinutes: Bestemmer antall minutter spørringskjøringsinformasjonen aggregeres for. Standardverdien er 5.
  • SystemCounterAggregationTimeInMinutes: Bestemmer antall minutter systemtelleren aggregeres for. Standardverdien er 5.

Når du har gjort endringene i konfigurasjonsfilen, starter du gatewayen på nytt for at disse konfigurasjonsverdiene skal tre i kraft. Rapportfilene genereres nå på plasseringen du har angitt for ReportFilePath.

Merk

Det kan ta opptil 10 minutter pluss tiden som er angitt for QueryExecutionAggregationTimeInMinutes i konfigurasjonsfilen til filene begynner å vises i mappen.

Forstå ytelseslogger

Når du aktiverer denne funksjonen, opprettes fire nye loggfiler:

  • Rapporten for kjøring av spørring
  • Startrapport for spørring
  • Aggregasjonsrapporten for kjøring av spørring
  • Systemtelleraggregasjonsrapporten

Rapporten for kjøring av spørring inneholder detaljert informasjon om kjøring av spørring. Følgende attributter fanges opp.

Attributt Bekrivelse
GatewayObjectId Unik identifikator for gatewayen.
RequestId Unik identifikator for en gatewayforespørsel. Det kan være det samme for flere spørringer.
DataSource Inneholder både datakildetypen og datakilden.
QueryTrackingId Unik identifikator for en spørring. Det kan imidlertid gjentas hvis en spørring mislykkes og prøves på nytt.
QueryExecutionEndTimeUTC Tidspunktet da kjøringen av spørringen ble fullført.
QueryExecutionDuration (ms) Varighet for en spørringskjøring.
QueryType Type spørring. Spørringen som ble sendt, kan for eksempel være en Power BI-oppdatering eller DirectQuery. Eller det kan være spørringer fra Power Apps og Power Automate.
DataProcessingEndTimeUTC Tid da databehandlingsaktiviteter som spoling, datahenting, komprimering og databehandling er fullført.
DataProcessingDuration (ms) Varighet for databehandlingsaktiviteter som spoling, datahenting, komprimering og databehandling.
Suksess Angir om spørringen var vellykket eller mislykket.
ErrorMessage Hvis spørringen mislyktes, angir du feilmeldingen.
SpoolingDiskWritingDuration (ms) Angir hvor lang tid gatewayen har til å skrive alle data til disken
SpoolingDiskReadingDuration (ms) Angir hvor lang tid gatewayen har til å lese alle data på disken
SpoolingTotalDataSize (byte) Størrelse(komprimert) for dataene som er skrevet til/lest fra disken
DataReadingAndSerializationDuration (ms) Angir hvor lang tid gatewayen tar å lese data fra datakilden og serialisere dem i pakker.
DiskRead (byte/sek) Angir byte som leses av gatewayen per sekund. DiskRead(byte/sec) = SpoolingTotalDataSize / SpoolingDiskReadingDuration
DiskWrite (byte/sec) Angir byte skrevet av gatewayen per sekund. DiskWrite(byte/sec) = SpoolingTotalDataSize / SpoolingDiskWritingDuration

Startrapporten for spørringen inneholder spørringen og starttidspunktet for spørringen. Følgende attributter fanges opp.

Merk

EvaluationContext vises uten at ytterligere logging er aktivert for Power BI-dataflyter og Dataflyt gen2 for brukere bare på Pro-lisenser. Du trenger fortsatt ekstra logging aktivert for å vise EvaluationContext for Power BI-dataflyter for brukere på Premium-lisenser.

Attributt Bekrivelse
GatewayObjectId Unik identifikator for gatewayen.
RequestId Unik identifikator for en gatewayforespørsel. Det kan være det samme for flere spørringer.
DataSource Inneholder både datakildetypen og datakilden.
QueryTrackingId Unik identifikator for en spørring. Det kan imidlertid gjentas hvis en spørring mislykkes og prøves på nytt.
QueryExecutionStartTimeUTC Tidspunktet da kjøringen av spørringen startet.
QueryType Type spørring. Spørringen som ble sendt, kan for eksempel være en Power BI-oppdatering eller DirectQuery. Eller det kan være spørringer fra Power Apps og Power Automate.
QueryText Fullfør spørring kodet med base64.
EvaluationContext Inneholder artefakt-IDen (det vil eksempel: ModelID, DataflowsId) sammen med tilleggsdata, avhengig av artefakten. Vær oppmerksom på at dette feltet bare fylles ut for dataflyt gen2 og Power Platform-dataflyter.

Aggregasjonsrapporten for spørringskjøring inneholder spørringsinformasjon aggregert til et tidsintervall etter GatewayObjectId, DataSource, Success og QueryType. Standardverdien er fem minutter, men du kan justere den. Følgende attributter fanges opp.

Attributt Bekrivelse
GatewayObjectId Unik identifikator for gatewayen.
AggregationStartTimeUTC Starten på tidsvinduet der spørringsattributter ble aggregert.
AggregationEndTimeUTC Slutt på tidsvinduet der spørringsattributter ble aggregert.
DataSource Inneholder både datakildetypen og datakilden.
Suksess Angir om spørringen var vellykket eller mislykket.
AverageQueryExecutionDuration (ms) Gjennomsnittlig tid for kjøring av spørring for tidsvinduet for aggregasjon.
MaxQueryExecutionDuration (ms) Maksimal tid for kjøring av spørring for tidsvinduet for aggregasjon.
MinQueryExecutionDuration (ms) Minimum tid for kjøring av spørring for tidsvinduet for aggregasjon.
QueryType Type spørring. Spørringen som ble sendt, kan for eksempel være en Power BI-oppdatering eller DirectQuery. Eller det kan være spørringer fra Power Apps og Power Automate.
AverageDataProcessingDuration (ms) Gjennomsnittlig tid for databehandlingsaktiviteter som spoling, datahenting, komprimering og databehandling for tidsvinduet for aggregasjon.
MaxDataProcessingDuration (ms) Maksimal tid for databehandlingsaktiviteter som spoling, datahenting, komprimering og databehandling for tidsvinduet for aggregasjon.
MinDataProcessingDuration (ms) Minimumstid for databehandlingsaktiviteter som spoling, datahenting, komprimering og databehandling for tidsvinduet for aggregasjon.
Antall Antall spørringer.

Systemtelleraggregasjonsrapporten inneholder systemtellerverdier aggregert til et tidsintervall. Standardverdien er fem minutter, men du kan justere den. Følgende attributter fanges opp.

Attributt Bekrivelse
GatewayObjectId Unik identifikator for gatewayen.
AggregationStartTimeUTC Start av tidsvinduet for systemtellerne som ble aggregert.
AggregationEndTimeUTC Slutt på tidsvinduet for systemtellerne som ble aggregert.
CounterName Systemtellere gjelder for én server som er vert for en gatewaynode og inkluderer:
SystemCPUPercent: CPU brukt på serveren som en prosentandel av total tilgjengelig CPU.
SystemMEMUsedPercent: Minne som brukes på serveren som en prosentandel av totalt tilgjengelig minne.
GatewayCPUPercent: Summen av prosenten av CPU som brukes av gateway-prosessen på hver kjerne. Hvis du vil hente prosenten av CPU-en som brukes på serveren, deler du GatewayCPUPercent med antall kjerner.
GatewayMEMKb: Summen av det totale minnet i kilobyte som brukes av gateway-prosessen.
Max Maksimumsverdi for systemtelleren for tidsvinduet for aggregasjon.
Min Minimumsverdi for systemtelleren for tidsvinduet for aggregasjon.
Average Gjennomsnittsverdi for systemtelleren for tidsvinduet for aggregasjon.

Visualiser gatewayytelse

Nå kan du visualisere dataene som er i loggfilene.

  1. Last ned PBI-malen for gatewayytelse, og åpne den ved hjelp av Power BI Desktop.

  2. Kontroller at mappebanen samsvarer med verdien i ReportFilePath i dialogboksen som åpnes.

    Pop-up for the folder path.

  3. Velg Last inn, og malfilen begynner å laste inn dataene fra loggfilene. Alle visualobjekter fylles ut ved hjelp av dataene i rapportene.

  4. Du kan eventuelt lagre denne filen som en PBIX, og publisere den til tjenesten for automatiske oppdateringer. Hvis du vil ha mer informasjon, kan du gå til Publiser semantiske modeller og rapporter fra Power BI Desktop.

Du kan også tilpasse denne malfilen etter dine behov. Hvis du vil ha mer informasjon om Power BI-maler, kan du gå til dette blogginnlegget for Microsoft Power BI.

Overvåking av spolelagring

Som standard er spolelagring for gatewayen plassert på C:\Users\PBIEgwService\AppData\Local\Microsoft\On-premises data gateway\Spooler. Pass på å overvåke denne plasseringen for å sikre at det er tilstrekkelig ledig diskplass. Mer informasjon: Gateway-utskriftsdata

Overvåking av samtidighet for gateway-medlemmer

Som standard er grensen for antall spørringer som kan kjøres samtidig på en gatewaynode, 40. Hvis du treffer denne grensen, vil det ofte føre til at innkommende spørringer blir satt i kø i påvente av å kjøre i lang tid, noe som vil resultere i ytelsesreduksjon og tidsavbruddstype for feil. Hvis du mistenker at et gateway-medlem treffer denne grensen, aktiverer du ytterligere logging, eksporterer gatewayloggene, tar en titt på Mashup*.log-filene , ser etter «runningCount» og «pendingCount»-nøkkelord og kontrollerer om «runningCount» ofte er nær 40, eller hvis «venterCount» ofte er over null. Se dette dokumentet for mer informasjon om hvordan du planlegger og skalerer gatewayen.

Spørringer med dårlig ytelse

Langvarige spørringer kan kreve ytterligere endring av datakilden eller ytterligere optimalisering av selve spørringen. Dette kan være enten for Power BI-oppdateringer eller for direkte databasespørringer, for eksempel Power BI DirectQuery, Power Apps eller Azure Logic Apps.

Gatewayen utfører som standard grunnleggende logging. Hvis du undersøker spørringer som utføres tregt, kan du i tillegg til å bruke funksjonen for ytelsesovervåking midlertidig aktivere tilleggslogging for å samle inn mer logginformasjon, inkludert nettflettingsmotorlogger, spørringsstrenger og detaljert sporing på nivå. Disse loggene er skrevet til samme sted som de vanlige gatewayloggene. Hvis du vil gjøre dette, velger du Diagnostikk tilleggslogging>i den lokale datagatewayappen.

Turn on additional logging.

Aktivering av denne innstillingen vil sannsynligvis øke loggstørrelsen betydelig, basert på gatewaybruk. Vi anbefaler at når du er ferdig med å se gjennom loggene, deaktiverer du ekstra logging. Vi anbefaler ikke å la denne innstillingen være aktivert under normal gatewaybruk.

Optimaliser ytelsen ved å strømme data

Som standard slår den lokale datagatewayen data før de returneres til den semantiske modellen, noe som potensielt kan føre til lavere ytelse under datainnlastings- og oppdateringsoperasjoner. Standardvirkemåten kan overstyres.

  1. I filen C:\Program files\On-Premises data gateway\Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config angir du StreamBeforeRequestCompletes-innstillingen til Sann, og deretter lagrer du.

    <setting name="StreamBeforeRequestCompletes" serializeAs="String">
       <value>True</value>
    </setting>
    
  2. Start gatewayen på nytt i lokal datagatewaytjeneste>Innstillinger.

Optimaliser ytelsen ved å utelate bestemte mapper fra antivirusskanning

For å unngå potensielle ytelseseffekter kan enkelte mapper utelates fra antivirusskanning når du bruker et antivirusprogram på filnivå på serveren der en lokal datagateway er installert. Hvis disse mappene ikke utelates, kan det hende du ser ytelseseffekter og potensielt andre uventede virkemåter siden disse mappene mottar en stor mengde skriveoperasjoner og er, i kjernen, datasamlebånd i den lokale datagatewayen.

Mapper som kanskje må utelates fra antivirusskanning i den lokale datagatewayserveren

Merk

Følgende plassholderstasjon representerer bokstaven på stasjonen der den lokale datagatewayen er installert. Vanligvis er driverbokstaven C. Følgende plassholder ServiceAccount representerer tjenestekontoen som kjører den lokale datagatewayen. Standardkontoen er PBIEgwService.

  • Loggingskatalog: Stasjon:\Windows\ServiceProfiles\ ServiceAccount \AppData\Local\Microsoft\Lokal datagateway
  • Lagringskatalog for spole: Stasjon:\Windows\ServiceProfiles\ ServiceAccount \AppData\Local\Microsoft\Lokal datagateway\Spooler

Neste trinn