Optimere DirectQuery-modeller med lagring på tabelniveau

Fuldført

DirectQuery er en måde at hente data på Power BI Desktop. DirectQuery-metoden involverer direkte forbindelse til data i dets kildelager inde fra Power BI Desktop. Den er et alternativ til at importere data til Power BI Desktop.

Når du bruger DirectQuery-metoden, afhænger den overordnede brugeroplevelse af den underliggende datakildes ydeevne meget. Hvis forespørgslerne svar langsommere, vil det medføre en negativ brugeroplevelse, og forespørgsler kan give time out i scenarierne for antallet af forespørgsler. Desuden vil antallet af brugere, der åbner rapporterne på én gang, have indflydelse på den belastning, der er placeret på datakilden. Hvis rapporten f.eks. indeholder 20 visualiseringer, og 10 personer bruger rapporten, findes der 200 forespørgsler eller flere i datakilden, fordi hver visuel grafik vil udstede en eller flere forespørgsler.

Din models ydeevne Power BI vil muligvis ikke kun påvirke den underliggende datakildes performance, men også af andre ukontrollerbare faktorer, som f.eks.:

  • Netværks latenstid. hurtigere netværk returnerer data hurtigere.

  • Datakildeens serverydeevne, og hvor mange andre arbejdsbyrder der er på den pågældende server. Overvej f.eks., at en serveropdatering finder sted, mens flere hundrede personer bruger samme server af forskellige årsager.

Derfor udgør brug af DirectQuery en risiko for kvaliteten af modellens ydeevne. Hvis du vil optimere ydeevnen i denne situation, skal du have kontrol over eller have adgang til kildedatabasen.

Yderligere oplysninger finder du i DirectQuery-modelvejledningen Power BI Desktop.

Konsekvenser af at bruge DirectQuery

Det er en god ide at importere data Power BI Desktop til, men organisationen skal muligvis bruge tilstanden DirectQuery-dataforbindelser af en af følgende årsager (fordele ved DirectQuery):

  • Det er passende, hvis data ændres ofte og tæt på realtidsrapportering.

  • Den kan håndtere store data uden at skulle aggregere på forhånd.

  • Den anvender begrænsninger for adgang til data for at overholde de lovgivningsmæssige krav.

  • Den kan bruges med en flerdimensionel datakilde, der indeholder målinger, som f.eks. SAP Business Warehouse . BW.

Hvis din organisation har brug for at bruge DirectQuery, skal du klart forstå, hvordan det er, inden for Power BI Desktop og være opmærksom på begrænsningerne for organisationen. Derefter er du i stand til at gøre noget for at optimere DirectQuery-modellen så meget som muligt.

DirectQuery-forbindelsers funktionalitet

Når du bruger DirectQuery til at oprette forbindelse til data i Power BI Desktop, fungerer denne forbindelse på følgende måde:

  • Når du først bruger funktionen Hent data Power BI Desktop, skal du vælge kilden. Hvis du opretter forbindelse til en relationskilde, kan du vælge et sæt tabeller, og hver af dem definerer en forespørgsel, der logisk returnerer et sæt data. Hvis du vælger en multidimensionel kilde, f.eks.GIFT, kan du kun vælge kilden.

  • Når du indlæser dataene, importeres der ingen data til Power BI Desktop det, men kun skemaet indlæses. Når du bygger grafik inden for Power BI Desktop, sendes forespørgsler til den underliggende kilde for at hente de nødvendige data. Den tid, det tager at opdatere det visuelle element afhænger af den underliggende datakildes ydeevne.

  • Hvis der foretages ændringer i de underliggende data, afspejles de ikke omgående i de eksisterende visualiseringer Power BI pga. cachelagring. Du skal udføre en opdatering for at se disse ændringer. De nødvendige forespørgsler er til stede for de enkelte visuelle elementer, og visuals opdateres tilsvarende.

  • Når du udgiver rapporten til tjenesten Power BI , vil den resultere i en semantisk model i Power BI brug på samme måde som til import. Der er dog ikke inkluderet data med den semantiske model.

  • Når du åbner en eksisterende rapport i brug Power BI eller bygger en ny, forespørges den underliggende kilde igen for at hente de nødvendige data. Afhængigt af placeringen af den oprindelige kilde kan du være nødt til at konfigurere en data gateway for det lokale miljø.

  • Du kan pinde visualiseringer eller hele rapportsider som dashboard-felter. Felterne opdateres automatisk i en plan, f.eks. hver time. Du kan styre frekvensen af denne opdatering, så den opfylder dine behov. Når du åbner et dashboard, afspejler felterne dataene på tidspunktet for den seneste opdatering og omfatter muligvis ikke de seneste ændringer, der er foretaget i den underliggende datakilde. Du kan altid opdatere et åbent dashboard for at sikre, at det er opdateret.

Begrænsninger for DirectQuery-forbindelser

Brugen af DirectQuery kan have negative konsekvenser. Begrænsningerne varierer, afhængigt af den bestemte datakilde, der bruges. Der skal tages højde for følgende punkter:

  • Performance – Som det tidligere er beskrevet, afhænger den overordnede brugeroplevelse af den underliggende datakildes ydeevne meget.

  • Sikkerhed – Hvis du bruger flere datakilder i en DirectQuery-model, er det vigtigt at forstå, hvordan data bevæger sig mellem de underliggende datakilder og de tilknyttede sikkerhedsmæssige konsekvenser. Du skal også identificere, om der gælder sikkerhedsregler for dataene i den underliggende kilde, da Power BI alle brugere kan se disse data.

  • Data transformation – Sammenlignet med importerede data har data, der stammer fra DirectQuery, begrænsninger med hensyn til anvendelse af teknikker af data transformation i Power Query Editor. Hvis du f.eks. opretter forbindelse til en OLAP kilde, f.eks.OPLYSNINGER BW, kan du ikke foretage nogen transformeringer overhovedet. Hele den eksterne model tages fra datakilden. Hvis du vil foretage transformationer til dataene, skal du gøre det i den underliggende datakilde.

  • Modellering – Nogle af de modelleringsfunktioner, du har med importerede data, er ikke tilgængelige, eller de er begrænsede, når du bruger DirectQuery.

  • Rapportering – Næsten alle de rapporteringsfunktioner, du har med importerede data, understøttes også for DirectQuery-modeller, forudsat at den underliggende kilde har et passende ydeevneniveau. Når rapporten publiceres i tjenesten Power BI , vil funktionerne Quick Insights og Q&A dog ikke blive understøttet. Brugen af funktionen Gå på opdagelse i Excel vil sandsynligvis resultere i en dårligere ydeevne.

Du kan finde mere detaljerede oplysninger om begrænsningerne ved brug af DirectQuery i Implications of using DirectQuery.

Nu, hvor du har en kort forståelse af, hvordan DirectQuery fungerer, og de begrænsninger, den medfører, kan du gøre noget for at forbedre ydeevnen.

Optimere ydeevne

Vi fortsætter med scenariet Debitwind Traders under gennemgangen af den semantiske model, og du opdager, at forespørgslen brugte DirectQuery Power BI Desktop til at oprette forbindelse til kildedataene. Denne brug af DirectQuery er årsagen til, at brugerne arbejder med dårlig rapportydeevne. Det tager for lang tid at indlæse siderne i rapporten, og tabellerne opdaterer ikke hurtigt nok, når der foretages bestemte valg. Du skal gøre en handling for at optimere DirectQuery-modellens ydeevne.

Du kan undersøge de forespørgsler, der sendes til den underliggende kilde, og prøve at identificere årsagen til den dårlige forespørgselsydeevne. Du kan derefter foretage ændringer i og Power BI Desktop den underliggende datakilde for at optimere den overordnede performance.

Optimer data i Power BI Desktop

Når du har optimeret datakilden så meget som muligt, Power BI Desktop kan du gøre yderligere ved at bruge performanceanalyser, hvor du kan anvende forespørgselsforespørgsler til at validere forespørgselsplaner.

Du kan analysere varigheden af forespørgsler, der sendes til den underliggende kilde, for at identificere de forespørgsler, der det tager lang tid at indlæse. Du kan med andre ord identificere, hvor flaskehalse findes.

Du behøver ikke at bruge en særlig indfaldsvinkel, når du optimerer en DirectQuery-model. du kan anvende samme optimeringsteknik, som du brugte på de importerede data til at tilpasse dataene fra DirectQuery-kilden. Du kan f.eks. reducere antallet af visuelle elementer på rapportsiden eller reducere antallet af felter, der bruges visuelt. Du kan også fjerne unødvendige kolonner og rækker.

Du kan finde en mere detaljeret vejledning til, hvordan du optimerer en DirectQuery-forespørgsel, i: Vejledning i DirectQuery-modellen Power BI Desktop i og vejledning til brug af DirectQuery.

Optimer den underliggende datakilde (tilknyttet database)

Dit første stop er datakilden. Du skal tilpasse kildedatabasen så meget som muligt, da alt, hvad du gør for at forbedre ydeevnen for kildedatabasen, vil til gengæld forbedre Power BI DirectQuery. De handlinger, du kan udføre i databasen, gør de bedste.

Overvej, hvordan følgende standarddatabasemetoder anvendes i de fleste situationer:

  • Undgå at bruge komplekse beregnede kolonner, da beregningsudtrykket integreres i kildeforespørgsler. Det er mere effektivt at skubbe udtrykket tilbage til kilden, da det undgår et push-down. Du kan også overveje at føje kolonnekolonner til surrogatnøgler til tabeller af typen Dimension.

  • Gennemse indekserne, og kontroller, at det aktuelle indeks er korrekt. Hvis du har brug for at oprette nye indekser, skal du sikre dig, at de er korrekte.

Se vejledningsdokumenterne i datakilden, og implementer deres performanceanbefalinger.

Tilpasse indstillingerne for forespørgselsreduktion

Power BI Desktop giver dig mulighed for at sende færre forespørgsler og deaktivere visse interaktioner, der vil resultere i en dårlig erfaring, hvis det tager lang tid at køre de forespørgsel, der er resultatet. Hvis du anvender disse indstillinger, forhindres det, at forespørgsler fortløbende søger i datakilden, hvilket bør forbedre ydeevnen.

I dette eksempel redigerer du standardindstillingerne for at anvende de tilgængelige indstillinger for datareduktion på modellen. Du kan få adgang til indstillingerne ved at vælge >Indstillinger for> filindstillinger, rulle ned på siden og derefter vælge indstillingen For forespørgselsreduktion .

Der er følgende indstillinger for reduktion i forespørgsler:

  • Reducer antallet af forespørgsler, der sendes af – Som standard påvirker alle visuelle elementer hinanden. Hvis dette afkrydsningsfelt markeres, deaktiveres standardinteraktionen. Du kan vælge, hvilke visuelle elementer der skal bruges sammen, ved at bruge funktionen Rediger interaktioner .

  • Udstedere – Som standard er indstillingen Anvende ændringer afvaluta valgt. Hvis du vil tvinge rapportbrugerne til manuelt at anvende ændringer i personlæseren, skal du vælge knappen Tilføj en anvend-knap på hver enkelt person, så ændringerne kan anvendes, når du er klar til det.

  • Filtre – Som standard er indstillingen Anvend grundlæggende filterændringer valgt. Hvis du vil tvinge rapportbrugerne til at anvende filterændringer manuelt, skal du vælge en af de alternative indstillinger:

    • Føje en anvend knap til alle grundlæggende filtre for at anvende ændringer, når du er klar

    • Føje en enkelt knap til filterruden for at anvende ændringer på én gang (forhåndsversion)