Optimera DirectQuery-modeller med lagring på registernivå

Slutförd

DirectQuery är ett sätt att hämta data till Power BI Desktop. Med DirectQuery-metoden ansluts du direkt till data i dess källdatabas inifrån Power BI Desktop. Det är ett alternativ till att importera data till Power BI Desktop.

När du använder DirectQuery-metoden beror den generella användarupplevelsen på prestandan hos den underliggande datakällan. Långsamma svar leder till en negativ användarerfarenhet och i de vanliga scenarierna kan frågor ta slut. Hur många användare som öppnar rapporterna samtidigt påverkar också vilken inläsning som placeras på datakällan. Om det till exempel finns 20 visuella element i rapporten och tio personer använder rapporten finns 200 frågor eller fler i datakällan, eftersom varje visuell objekt kan skicka en eller flera frågor.

Prestandan hos din modell Power BI påverkas inte bara av prestandan hos den underliggande datakällan utan även av andra okontrollerbara faktorer, till exempel:

  • Nätverksfördröjning snabbare nätverk returnerar data snabbare.

  • Prestandan för datakällans server och hur många andra arbetsbelastningar det finns på servern. Titta exempelvis på följderna av en serveruppdatering medan hundratals personer använder samma server av olika orsaker.

Detta innebär en risk för kvaliteten på din modells prestanda genom att använda DirectQuery. Om du vill optimera prestandan i den här situationen måste du ha kontroll över eller åtkomst till källdatabasen.

Mer detaljerad information finns i Modellvägledning för DirectQuery Power BI Desktop.

Följderna av att använda DirectQuery

Det är praktiskt att importera data Power BI Desktop till, men din organisation kanske måste använda dataanslutningsläget DirectQuery på grund av någon av följande orsaker (fördelar med DirectQuery):

  • Den är lämplig i de fall där data ofta och nära realtidsrapportering krävs.

  • Den kan hantera stora data utan att du behöver för aggregera.

  • Det tillämpar begränsningar av integritetskravet för att uppfylla juridiska krav.

  • Den kan användas med en flerdimensionell datakälla som innehåller mått som( SAP Business Warehouse BW).

Om din organisation behöver använda DirectQuery bör du klart förstå dess beteende inom Power BI Desktop och vara medveten om dess begränsningar. Du kan då vara i god position att vidta åtgärder för att optimera DirectQuery-modellen så mycket som möjligt.

Beteende för DirectQuery-anslutningar

När du använder DirectQuery för anslutning till data, fungerar Power BI Desktop den anslutningen på följande sätt:

  • När du använder funktionen Hämta data inledningsvis Power BI Desktop måste du Välj källan. Om du ansluter till en relationskälla kan du Välj uppsättning register, och var och en definierar en fråga som logiskt returnerar en uppsättning data. Om du Välj en flerdimensionell källa, t.ex. ADVENTURE BW, kan du Välj källan.

  • När du läser in data importeras inga data till det Power BI Desktop. Det är bara schemat som läses in. När du bygger en visuell information Power BI Desktop skickas frågor till den underliggande källan för att hämta nödvändiga data. Den tid det tar att uppdatera det visuella objektet beror på prestandan hos den underliggande datakällan.

  • Om du gör ändringar i underliggande data återspeglas de inte direkt i den befintliga visuella informationen Power BI på grund av cachning. Du måste uppdatera uppdateringen för att se ändringarna. De frågor som behövs finns för varje visuellt objekt och den visuella informationen uppdateras i enlighet med detta.

  • När du publicerar rapporten i tjänsten Power BI leder det till en modell för modelllära Power BI som är i bruk, samma som för import. Inga data inkluderas i modellmodellen.

  • När du öppnar en befintlig rapport i Power BI tjänst eller bygger en ny, frågas den underliggande källan återigen för att hämta nödvändiga data. Beroende på platsen för den ursprungliga källan måste du kanske konfigurera en data-gateway för lokal.

  • Du kan fäst visuella element eller hela rapportsidor när du använder instrumentpaneler. Programmet uppdateras automatiskt i ett schema, till exempel varje timme. Du kan styra frekvensen för den här uppdateringen för att uppfylla dina behov. När du öppnar en instrumentpanel återspeglar dessa data vid tidpunkten för den senaste uppdateringen och kanske inte inkluderar de senaste ändringarna som görs av den underliggande datakällan. Du kan alltid uppdatera en öppen instrumentpanel så att den är uppdaterad.

Begränsningar för DirectQuery-anslutningar

Användningen av DirectQuery kan ha negativa följder. Begränsningarna varierar beroende på vilken datakälla som används. Följande punkter bör beaktas:

  • Prestanda . Som tidigare beskrivits beror din generella användarerfarenhet på prestandan hos den underliggande datakällan.

  • Säkerhet – Om du använder flera datakällor i en DirectQuery-modell är det viktigt att du känner till hur data förflyttas mellan de underliggande datakällorna och de associerade säkerhetskonsekvenserna. Du bör även identifiera om säkerhetsregler gäller för data i den underliggande källan eftersom Power BI varje användare kan se dessa data.

  • Datatransformering – Data som importeras från DirectQuery har begränsningar när det gäller att använda datatransformeringsmetoder i redigeraren Power Query . Om du t.ex. ansluter till en OLAP-källa, t.ex. BIND BW, kan du inte göra några transformningar alls. Hela den externa modellen tas från datakällan. Om du vill transformera data måste du göra detta i den underliggande datakällan.

  • Modell – Vissa av de modellkapaciteter som du har med importerade data är inte tillgängliga eller begränsade när du använder DirectQuery.

  • Rapportering – Nästan alla rapporteringskapaciteter som du har med importerade data stöds också för DirectQuery-modeller, förutsatt att den underliggande källan ger en lämplig prestandanivå. När rapporten publiceras i tjänst stöds Power BI dock inte funktionerna Snabbin insights och kvt.A. Om du använder funktionen Utforska i Excel leder det troligen till en undermålig prestanda.

Mer detaljerad information om begränsningarna för att använda DirectQuery finns i Implikationerna av att använda DirectQuery.

När du nu har en kort förståelse för hur DirectQuery fungerar och begränsningarna i den, kan du vidta åtgärder för att förbättra prestandan.

Optimera prestanda

Med hjälp av scenariot Motfördwind Traders upptäcker du under din granskning av modellförvalten att frågan som användes DirectQuery för att Power BI Desktop ansluta till källdata. Detta är orsaken till att användarna upplever dålig rapportprestanda. Det tar för lång tid att läsa in sidorna i rapporten och registren uppdateras inte snabbt när vissa val görs. Du måste vidta åtgärder för att optimera prestandan från DirectQuery-modellen.

Du kan undersöka frågorna som skickas till den underliggande källan och försöka identifiera orsaken till den dåliga frågeprestandan. Du kan sedan göra ändringar i och den Power BI Desktop underliggande datakällan för att optimera hela prestandan.

Optimera data i Power BI Desktop

När du har optimerat datakällan så mycket som möjligt kan Power BI Desktop du vidta ytterligare åtgärder inom detta genom att använda Prestandaanalysator, där du kan undersöka frågor för att validera frågeplaner.

Du kan analysera längden på frågorna som skickas till den underliggande källan för att identifiera de frågor som tar lång tid att läsa in. Med andra ord kan du identifiera var flaskhalsarna finns.

Du behöver inte använda någon speciell metod när du optimerar en DirectQuery-modell. Du kan använda samma optimeringsmetoder som du använde på importerade data för att finjustera data från DirectQuery-källan. Du kan till exempel minska antalet visuella objekt på rapportsidan eller minska antalet fält som används i ett visuellt objekt. Du kan också ta bort onödiga kolumner och rader.

Mer detaljerad information om hur du optimerar en DirectQuery-fråga finns i: DirectQuery-modellvägledning Power BI Desktop i och riktlinjer för hur du använder DirectQuery.

Optimera den underliggande datakällan (ansluten databas)

Ditt första stopp är datakällan. Du måste finjustera källdatabasen så mycket som möjligt eftersom allt du gör för att förbättra prestandan för källdatabasen i sin tur förbättrar Power BI DirectQuery. De åtgärder som du vidta i databasen gör det bästa.

Beakta användningen av följande standarddatabasrutiner som gäller i de flesta situationer:

  • Undvik att använda komplexa beräknade kolumner eftersom beräkningsuttrycket bäddas in i källfrågorna. Det är mer effektivt att push-uttrycket tillbaka till källan eftersom det undviker push-ned. Du kan också lägga till nyckelkolumner i dimensionstypregister.

  • Granska indexen och kontrollera att den aktuella indexeringen är korrekt. Om du behöver skapa nya index måste du se till att de är relevanta.

Läs information i datakällans vägledningsdokument och implementera deras prestandarekommendationer.

Anpassa alternativen för frågereducering

Power BI Desktop ger dig möjlighet att skicka få frågor och att inaktivera vissa interaktioner som leder till en dålig erfarenhet om de resulterande frågorna tar lång tid att köra. Om du använder dessa alternativ förhindrar du att frågor och datakällor kontinuerligt används, vilket bör förbättra prestandan.

I det här exemplet redigerar du standardinställningarna för att tillämpa tillgängliga datareduceringsalternativ på din modell. Du kommer åt inställningarna genom att välja Filalternativ>och inställningar>, bläddra nedåt på sidan och sedan välja alternativet Frågereducering .

Följande alternativ för frågereducering finns:

  • Minska antalet frågor som skickas. Som standard samverkar varje visuellt objekt med alla andra visuella objekt. Om du markerar den här kryssrutan inaktiveras denna standardåtgärder. Du kan sedan om du vill välja vilka visuella objekt som ska samverka med varandra genom att använda funktionen Redigera interaktioner.

  • Utsnitt : Som standard är I00/022/00000000000000000 . Om du vill tvinga rapportanvändarna att manuellt tillämpa ändringar i Välj klickar du på knappen Lägg till en tillämpa på varje bitare för att tillämpa ändringar när du är klar .

  • Filter - Som standard är Iingen tillämpa grundläggande alternativ för filterändringar valda. Om du vill att rapportanvändarna ska tillämpa filterändringar manuellt Välj något av de alternativa alternativen:

    • Lägg till en knapp som används i alla basfilter om du vill tillämpa ändringar när du är klar

    • Lägg till en knapp som bara används i filterfönstret om du vill tillämpa ändringarna samtidigt (förhandsversion)