Realtidsströmning i Power BI

Power BI med realtidsströmning hjälper dig att strömma data och uppdatera instrumentpaneler i realtid. Alla visuella objekt eller instrumentpaneler som skapas i Power BI kan visa och uppdatera realtidsdata och visuella objekt. Enheter och källor för strömmande data kan vara fabrikssensorer, källor för sociala medier, användningsstatistik för tjänster eller många andra tidskänsliga datainsamlare eller sändare.

Den här artikeln visar hur du konfigurerar och använder semantiska modeller för direktuppspelning i realtid i Power BI.

Screenshot of the Environmental sensors dashboard, showing the results of the data in real-time.

Typer av semantiska realtidsmodeller

För det första är det viktigt att förstå vilka typer av semantiska realtidsmodeller som är utformade för att visas i paneler och instrumentpaneler och hur dessa semantiska modeller skiljer sig åt.

Följande tre typer av semantiska realtidsmodeller är utformade för visning på instrumentpaneler i realtid:

  • Push-semantisk modell
  • Strömmande semantisk modell
  • PubNub streaming semantisk modell

I det här avsnittet beskrivs hur dessa semantiska modeller skiljer sig från varandra. Senare avsnitt beskriver hur du skickar data till var och en av dessa semantiska modeller.

Push-semantisk modell

Med en push-semantisk modell skickas data till Power BI-tjänst. När den semantiska modellen skapas skapar Power BI-tjänst automatiskt en ny databas i tjänsten för att lagra data.

Eftersom det finns en underliggande databas som lagrar data när de tas emot kan du skapa rapporter med data. Dessa rapporter och deras visuella objekt är precis som andra visuella rapportobjekt. Du kan använda alla funktioner för rapportskapande i Power BI, till exempel visuella Power BI-objekt, dataaviseringar och fästa paneler på instrumentpanelen.

När du har skapat en rapport med hjälp av push-semantikmodellen kan du fästa alla visuella rapportobjekt på en instrumentpanel. På den instrumentpanelen uppdateras visuella objekt i realtid när data uppdateras. I Power BI-tjänst utlöser instrumentpanelen en paneluppdatering varje gång nya data tas emot.

Det finns två saker att tänka på om fästa paneler från en push-semantisk modell:

  • Om du fäster en hel rapport med alternativet Fäst live resulterar det inte i att data uppdateras automatiskt.
  • När du fäster ett visuellt objekt på en instrumentpanel kan du använda Q&A för att ställa frågor om push-semantikmodellen på naturligt språk. När du har skapat en Q&A-fråga kan du fästa det resulterande visuella objektet på instrumentpanelen och det visuella objektet uppdateras också i realtid.

Strömmande semantisk modell

En strömmande semantisk modell skickar också data till Power BI-tjänst, med en viktig skillnad: Power BI lagrar endast data i en tillfällig cache, vilket snabbt upphör att gälla. Den tillfälliga cachen används bara för att visa visuella objekt som har en tillfällig historik, till exempel ett linjediagram som har ett tidsfönster på en timme.

En strömmande semantisk modell har ingen underliggande databas, så du kan inte skapa visuella rapportobjekt med hjälp av data som flödar in från strömmen. Därför kan du inte använda rapportfunktioner som filtrering, visuella Power BI-objekt och andra rapportfunktioner.

Det enda sättet att visualisera en strömmande semantisk modell är att lägga till en panel och använda den strömmande semantiska modellen som en anpassad strömmande datakälla . De anpassade strömmande panelerna som baseras på en strömmande semantisk modell är optimerade för att snabbt visa realtidsdata. Det finns lite svarstid mellan att skicka data till Power BI-tjänst och uppdatera det visuella objektet, eftersom det inte finns något behov av att ange eller läsa data från en databas.

I praktiken är det bäst att använda strömmande semantiska modeller och tillhörande visuella strömningsobjekt i situationer där det är viktigt att minimera svarstiden mellan push-överföring och visualisering av data. Du bör få data push-överförda i ett format som kan visualiseras som de är, utan fler sammansättningar. Exempel på data som är klara i befintligt mått är temperaturer och förberäknade medelvärden.

PubNub streaming semantisk modell

Med en PubNub-strömmande semantisk modell använder Power BI-webbklienten PubNub SDK för att läsa en befintlig PubNub-dataström. Power BI-tjänst lagrar inga data. Eftersom webbklienten gör det här anropet direkt måste du ange trafik till PubNub som tillåten om du endast tillåter godkänd utgående trafik från nätverket. Anvisningar finns i supportartikeln om att godkänna utgående trafik för PubNub.

Precis som med den strömmande semantiska modellen finns det ingen underliggande Power BI-databas med PubNub-strömmande semantikmodell. Du kan inte skapa visuella rapportobjekt mot data som flödar in och kan inte använda rapportfunktioner som filtrering eller visuella Power BI-objekt. Du kan bara visualisera en PubNub-strömmande semantisk modell genom att lägga till en panel på instrumentpanelen och konfigurera en PubNub-dataström som källa.

Paneler baserade på en PubNub-strömmande semantisk modell är optimerade för att snabbt visa realtidsdata. Eftersom Power BI är direkt anslutet till PubNub-dataströmmen är det lite fördröjning mellan att push-överföra data till Power BI-tjänst och uppdatera det visuella objektet.

Strömmande semantisk modellmatris

I följande tabell beskrivs de tre typerna av semantiska modeller för realtidsströmning och deras funktioner och begränsningar.

Kapacitet Skicka Strömning PubNub
Paneler på instrumentpanelen uppdateras i realtid när data skickas in Ja.
För visuella objekt som skapats via rapporter och sedan fästs på instrumentpanelen.
Ja.
För anpassade direktuppspelningspaneler som lagts till direkt på instrumentpanelen.
Ja.
För anpassade direktuppspelningspaneler som lagts till direkt på instrumentpanelen.
Paneler på instrumentpanelen uppdateras med jämna animeringar Nej. Ja. Ja.
Data som lagras permanent i Power BI för historisk analys Ja. Nej.
Data lagras tillfälligt i en timme för att återge visuella objekt.
Nej.
Skapa Power BI-rapporter ovanpå data Ja. Nej. Nej.
Maximal datainmatningshastighet 1 begäranden
16 MB/begäran
5 begäranden
15 KB/begäran
Saknas
Data skickas inte till Power BI.
Gränser för dataflöde 1 M rader/timme Inga. Saknas
Data skickas inte till Power BI.

Skicka data till semantiska modeller

I det här avsnittet beskrivs hur du skapar och överför data till de tre primära typerna av semantiska realtidsmodeller som du kan använda i realtidsströmning.

Du kan skicka data till en semantisk modell med hjälp av följande metoder:

  • Power BI REST-API:er
  • Användargränssnittet för Power BI-strömmande semantikmodell
  • Azure Stream Analytics

Använda Power BI REST-API:er för att skicka data

Du kan använda Power BI REST-API:er för att skapa och skicka data för att push-överföra semantiska modeller och till strömmande semantiska modeller. När du skapar en semantisk modell med hjälp av Power BI REST-API:er defaultMode anger flaggan om den semantiska modellen är push-överföring eller direktuppspelning.

Om ingen defaultMode flagga har angetts är den semantiska modellen som standard en push-semantisk modell. Om värdet defaultMode är inställt på pushStreamingär den semantiska modellen både en push- och strömmande semantisk modell och ger fördelarna med båda semantiska modelltyperna.

Kommentar

När du använder semantiska modeller med defaultMode flaggan inställd på pushStreaming, om en begäran överskrider storleksbegränsningen på 15 KB för en strömmande semantisk modell, men är mindre än storleksbegränsningen på 16 MB för en push-semantisk modell, lyckas begäran och datauppdateringarna i push-semantikmodellen. Alla strömmande paneler misslyckas dock tillfälligt.

När en semantisk modell har skapats kan du använda PostRows REST-API:er för att skicka data. Alla begäranden till REST-API:er skyddas med hjälp av Microsoft Entra ID OAuth.

Använda användargränssnittet för strömmande semantikmodell för att skicka data

I Power BI-tjänst kan du skapa en semantisk modell genom att välja API-metoden, enligt följande skärmbild:

Screenshot of the New streaming semantic model choices, showing the API selection.

När du skapar den nya strömmande semantikmodellen kan du aktivera historisk dataanalys, som du ser i följande skärmbild. Det här valet har en betydande inverkan.

Screenshot of the New streaming semantic model, showing Historic data analysis enabled.

När historisk dataanalys är inaktiverad, som den är som standard, skapar du en strömmande semantisk modell enligt beskrivningen tidigare. När historisk dataanalys är aktiverad blir den semantiska modell som du skapar både en strömmande semantisk modell och en push-semantisk modell. Den här inställningen motsvarar användning av Power BI REST-API:er för att skapa en semantisk modell med dess defaultMode inställd på pushStreaming, enligt beskrivningen tidigare.

Kommentar

Strömmande semantiska modeller som skapats med hjälp av Power BI-tjänst användargränssnittet kräver inte Microsoft Entra-autentisering. I sådana semantiska modeller tar semantikmodellens ägare emot en URL med en radnyckel som ger beställaren behörighet att skicka data till den semantiska modellen utan att använda en Microsoft Entra ID OAuth-ägartoken. Microsoft Entra-ID-metoden fungerar dock fortfarande för att skicka data till den semantiska modellen.

Använda Azure Stream Analytics för att skicka data

Du kan lägga till Power BI som utdata i Azure Stream Analytics och sedan visualisera dessa dataströmmar i Power BI-tjänst i realtid. I det här avsnittet beskrivs teknisk information om den processen.

Azure Stream Analytics använder Power BI REST API:er för att skapa utdataströmmen till Power BI, med defaultMode värdet pushStreaming. Den resulterande semantiska modellen kan använda både push och strömning. När du skapar den semantiska modellen anger retentionPolicy Azure Stream Analytics flaggan till basicFIFO. Med den inställningen lagrar databasen som stöder push-semantikmodellen 200 000 rader och släpper rader på fifo-sätt (först in först ut).

Viktigt!

Om din Azure Stream Analytics-fråga resulterar i mycket snabba utdata till Power BI, till exempel en eller två gånger per sekund, börjar Azure Stream Analytics batcha utdata i en enda begäran. Den här batchbearbetningen kan göra att begärandestorleken överskrider gränsen för strömningspanelen och att paneler för direktuppspelning inte kan återges. I det här fallet är bästa praxis att sänka datautdatahastigheten till Power BI. I stället för ett maximalt värde varje sekund kan du till exempel begära ett maximalt värde över 10 sekunder.

Konfigurera din semantiska realtidsströmningsmodell i Power BI

För att komma igång med realtidsströmning väljer du något av följande sätt att använda strömmande data i Power BI:

  • Paneler med visuella objekt från strömmande data
  • Semantiska modeller som skapats från strömmande data som finns kvar i Power BI

För båda alternativen måste du konfigurera strömmande data i Power BI. Så här får du din semantiska realtidsströmningsmodell att fungera i Power BI:

  1. Välj Lägg till en panel på en befintlig eller ny instrumentpanel.

  2. På sidan Lägg till en panel väljer du Anpassade strömmande data och sedan Nästa.

    Screenshot of the Add a tile page, showing the Custom Streaming Data selection.

  3. På sidan Lägg till en anpassad strömmande datapanel kan du välja en befintlig semantisk modell eller välja Hantera semantiska modeller för att importera din strömmande semantiska modell om du redan har skapat en. Om du inte har konfigurerat strömmande data ännu väljer du Lägg till strömmande semantisk modell för att komma igång.

    Screenshot of the dashboard, showing the Add streaming semantic model link in the Add a custom streaming data tile.

  4. På sidan Ny strömmande semantisk modell väljer du API, Azure Stream eller PubNub och väljer sedan Nästa.

    Screenshot of the New streaming semantic model choices, showing API, Azure Stream, and PubNub options.

Skapa en strömmande semantisk modell

Det finns tre sätt att skapa ett strömmande dataflöde i realtid som Power BI kan använda och visualisera:

  • Power BI REST API med hjälp av en slutpunkt för direktuppspelning i realtid
  • Azure Stream
  • PubNub

Det här avsnittet beskriver alternativen Power BI REST API och PubNub och förklarar hur du skapar en panel för direktuppspelning eller semantisk modell från den strömmande datakällan. Du kan sedan använda den semantiska modellen för att skapa rapporter. Mer information om Azure Stream-alternativet finns i Power BI-utdata från Azure Stream Analytics.

Använda Power BI REST API

Power BI REST API gör realtidsströmning enklare för utvecklare. När du har valt APIskärmen Ny strömmande semantisk modell och väljer Nästa kan du ange poster som gör att Power BI kan ansluta till och använda slutpunkten. Mer information om API :et finns i Använda Power BI REST-API:er.

Screenshot of the New streaming semantic model dialog, showing the Power BI REST API entries for a connection.

Om du vill att Power BI ska lagra data som dataströmmen skickar, så att du kan rapportera och analysera insamlade data, aktiverar du historisk dataanalys.

När du har skapat dataströmmen får du en REST API-URL-slutpunkt. Ditt program kan anropa slutpunkten med hjälp POST av begäranden för att skicka dina strömmande data till Power BI-semantikmodellen. I dina POST begäranden kontrollerar du att begärandetexten matchar JSON-exemplet som tillhandahålls av Power BI-användargränssnittet. Du kan till exempel omsluta dina JSON-objekt i en matris.

Varning

För strömmande semantiska modeller som du skapar i Power BI-tjänst användargränssnittet får den semantiska modellägaren en URL som innehåller en resursnyckel. Den här nyckeln auktoriserar beställaren att skicka data till den semantiska modellen utan att använda en OAuth-ägartoken för Microsoft Entra-ID. Tänk på konsekvenserna av att ha en hemlig nyckel i URL:en när du arbetar med den här typen av semantisk modell och metod.

Använda PubNub

Integreringen av PubNub-strömning med Power BI hjälper dig att skapa och använda dina PubNub-dataströmmar med låg latens i Power BI. När du väljer PubNubskärmen Ny strömmande semantisk modell och väljer Nästa visas följande skärm:

Screenshot of the New streaming semantic model dialog, showing the PubNub entries for connection.

Viktigt!

Du kan skydda PubNub-kanaler med hjälp av en PubNub Access Manager-autentiseringsnyckel (PAM). Den här nyckeln delas med alla användare som har åtkomst till instrumentpanelen. Mer information om PubNub-åtkomstkontroll finns i Hantera åtkomst.

PubNub-dataströmmar är ofta stora volymer och är inte alltid lämpliga för lagring och historisk analys i sin ursprungliga form. Om du vill använda Power BI för historisk analys av PubNub-data måste du aggregera den råa PubNub-strömmen och skicka den till Power BI, till exempel med hjälp av Azure Stream Analytics.

Exempel på realtidsströmning i Power BI

Här är ett exempel på hur realtidsströmning i Power BI fungerar. I det här exemplet används en offentligt tillgänglig dataström från PubNub. Följ med i exemplet för att se värdet för direktuppspelning i realtid för dig själv.

  1. I Power BI-tjänst väljer eller skapar du en ny instrumentpanel. Längst upp på skärmen väljer du Redigera Lägg>till en panel.

  2. På skärmen Lägg till en panel väljer du Anpassade strömmande data och sedan Nästa.

    Screenshot of the dashboard, showing the Add tile with the Custom streaming data selection.

  3. På sidan Lägg till en anpassad strömmande datapanel väljer du Lägg till strömmande semantisk modell.

    Screenshot of the dashboard, showing the Add streaming semantic model link in the Add a custom streaming data tile.

  4. På sidan Ny strömmande semantisk modell väljer du PubNub och sedan Nästa.

  5. På nästa skärm anger du ett semantiskt modellnamn, anger följande värden i de kommande två fälten och väljer sedan Nästa.

    • Undernyckel:sub-c-99084bc5-1844-4e1c-82ca-a01b18166ca8
    • Kanalnamn:pubnub-sensor-network

    Screenshot of the New streaming semantic model dialog, showing how to create a Semantic model name and entries in the Sub-key and Channel name fields.

  6. På nästa skärm behåller du de automatiskt ifyllda värdena och väljer Skapa.

    Screenshot of the New streaming semantic model dialog, showing defaults for the Semantic model name and Values from stream fields.

  7. Tillbaka i Power BI-arbetsytan skapar du en ny instrumentpanel och längst upp på skärmen väljer du Redigera>Lägg till en panel.

  8. Välj Anpassade strömmande data och välj Nästa.

  9. På sidan Lägg till en anpassad strömmande datapanel väljer du din nya strömmande semantiska modell och väljer sedan Nästa.

    Leka med exempelsemantikmodellen. Genom att lägga till värdefält i linjediagram och lägga till andra paneler kan du få en instrumentpanel i realtid som ser ut som följande skärmbild:

    Screenshot of the Environmental sensors dashboard, showing the results in real-time.

Gå vidare för att skapa egna semantiska modeller och strömma livedata till Power BI.

Frågor och svar

Här följer några vanliga frågor och svar om realtidsströmning i Power BI.

Kan du använda filter på push- eller strömmande semantiska modeller?

Strömmande semantiska modeller stöder inte filtrering. För push-semantiska modeller kan du skapa en rapport, filtrera rapporten och sedan fästa de filtrerade visuella objekten på en instrumentpanel. Det finns dock inget sätt att ändra filtret på det visuella objektet när det väl finns på instrumentpanelen.

Du kan fästa liverapportpanelen på instrumentpanelen separat och sedan ändra filtren. Levande rapportpaneler uppdateras dock inte i realtid när data skickas in. Du måste uppdatera det visuella objektet manuellt genom att välja ikonen Uppdatera längst upp till höger på instrumentpanelens sida.

När du använder filter för att push-överföra semantiska modeller som har DateTime fält med millisekunders precision stöds inte likvärdighetsoperatorer. Operatorer som är större än > eller mindre än < fungerar korrekt.

Hur ser du det senaste värdet på push- eller strömmande semantiska modeller?

Strömmande semantiska modeller är utformade för att visa de senaste data. Du kan använda den visuella kortströmningstypen för att enkelt se de senaste numeriska värdena. Visuella kortobjekt stöder DateTime inte eller Text datatyper.

För push-semantiska modeller kan du prova att skapa ett visuellt rapportobjekt med last N filtret om du har en tidsstämpel i schemat.

Hur kan du modellera på semantiska realtidsmodeller?

Modellering är inte möjligt på en strömmande semantisk modell, eftersom data inte lagras permanent. För en push-semantisk modell kan du använda REST API:et create semantic model för att skapa en semantisk modell med relationer och mått och använda REST API:er för uppdateringstabellen för att lägga till mått i befintliga tabeller.

Hur kan du rensa alla värden på en push- eller strömmande semantisk modell?

I en push-semantisk modell kan du använda REST API-anropet för borttagningsrader. Det finns inget sätt att rensa data från en strömmande semantisk modell, även om data rensas efter en timme.

Vad är fel om du konfigurerar ett Azure Stream Analytics-utdata till Power BI men inte ser det i Power BI?

Utför följande steg för att felsöka problemet:

  1. Starta om Azure Stream Analytics-jobbet.
  2. Prova att auktorisera din Power BI-anslutning igen i Azure Stream Analytics.
  3. Kontrollera att du kontrollerar samma arbetsyta i Power BI-tjänst som du angav för Azure Stream Analytics-utdata.
  4. Kontrollera att Azure Stream Analytics-frågan uttryckligen matar ut till Power BI-utdata med hjälp av nyckelordet INTO .
  5. Avgör om Azure Stream Analytics-jobbet har data som flödar genom det. Den semantiska modellen skapas endast när data överförs.
  6. Titta i Azure Stream Analytics-loggarna för att se om det finns några varningar eller fel.

Automatisk siduppdatering

Du kan använda automatisk siduppdatering på rapportsidans nivå för att ange ett uppdateringsintervall för visuella objekt som bara är aktiva när sidan används. Automatisk siduppdatering är endast tillgänglig för DirectQuery-datakällor. Det minsta uppdateringsintervallet beror på vilken typ av arbetsyta som rapporten publiceras och kapacitetsadministratörsinställningar för Premium-arbetsytor.

Mer information om automatisk siduppdatering finns i Automatisk siduppdatering i Power BI.