Realtime streaming in Power BI

Met Power BI met realtime streaming kunt u gegevens streamen en dashboards in realtime bijwerken. Elke visual of elk dashboard dat in Power BI is gemaakt, kan realtime gegevens en visuals weergeven en bijwerken. De apparaten en bronnen van streaminggegevens kunnen fabriekssensoren, sociale mediabronnen, metrische gegevens over servicegebruik of vele andere tijdgevoelige gegevensverzamelaars of zenders zijn.

In dit artikel leest u hoe u semantische streamingmodellen in realtime instelt en gebruikt in Power BI.

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

Typen realtime semantische modellen

Ten eerste is het belangrijk om inzicht te krijgen in de typen realtime semantische modellen die zijn ontworpen om weer te geven in tegels en dashboards en hoe deze semantische modellen verschillen.

De volgende drie typen realtime semantische modellen zijn ontworpen voor weergave op realtime dashboards:

  • Semantisch model pushen
  • Semantisch streamingmodel
  • PubNub-streaming semantisch model

In deze sectie wordt uitgelegd hoe deze semantische modellen verschillen van elkaar. In latere secties wordt beschreven hoe u gegevens naar elk van deze semantische modellen pusht.

Semantisch model pushen

Met een semantisch pushmodel worden gegevens naar de Power BI-service gepusht. Wanneer het semantische model wordt gemaakt, maakt de Power BI-service automatisch een nieuwe database in de service om de gegevens op te slaan.

Omdat er een onderliggende database is waarin de gegevens worden opgeslagen wanneer deze binnenkomen, kunt u rapporten maken met de gegevens. Deze rapporten en hun visuals zijn net als andere rapportvisuals. U kunt alle functies voor het bouwen van rapporten van Power BI gebruiken, zoals Power BI-visuals, gegevenswaarschuwingen en vastgemaakte dashboardtegels.

Nadat u een rapport hebt gemaakt met behulp van het semantische pushmodel, kunt u een van de rapportvisuals vastmaken aan een dashboard. Op dat dashboard worden visuals in realtime bijgewerkt wanneer de gegevens worden bijgewerkt. Binnen de Power BI-service activeert het dashboard een tegelvernieuwing telkens wanneer er nieuwe gegevens worden ontvangen.

Er zijn twee aandachtspunten voor vastgemaakte tegels van een push-semantisch model:

  • Als u een heel rapport vastmaken met de optie Live vastmaken, worden de gegevens niet automatisch bijgewerkt.
  • Zodra u een visual aan een dashboard hebt vastgemaakt, kunt u Q&A gebruiken om vragen te stellen over het semantische pushmodel in natuurlijke taal. Nadat u een Q&A-query hebt gemaakt, kunt u de resulterende visual weer vastmaken aan het dashboard en die visual wordt ook in realtime bijgewerkt.

Semantisch streamingmodel

Een semantisch streamingmodel pusht ook gegevens naar de Power BI-service, met een belangrijk verschil: Power BI slaat de gegevens alleen op in een tijdelijke cache, die snel verloopt. De tijdelijke cache wordt alleen gebruikt voor het weergeven van visuals met een tijdelijke geschiedenis, zoals een lijndiagram met een tijdvenster van één uur.

Een semantisch streamingmodel heeft geen onderliggende database, dus u kunt geen rapportvisuals maken met behulp van de gegevens die vanuit de stream binnenkomen. Daarom kunt u geen rapportfunctionaliteit gebruiken, zoals filteren, Power BI-visuals en andere rapportfuncties.

De enige manier om een semantisch streamingmodel te visualiseren, is door een tegel toe te voegen en het semantische streamingmodel te gebruiken als een aangepaste streaminggegevensbron . De aangepaste streamingtegels die zijn gebaseerd op een semantisch streamingmodel, zijn geoptimaliseerd voor het snel weergeven van realtime gegevens. Er is weinig latentie tussen het pushen van de gegevens naar de Power BI-service en het bijwerken van de visual, omdat de gegevens niet hoeven te worden ingevoerd of gelezen uit een database.

In de praktijk is het raadzaam om semantische streamingmodellen en de bijbehorende streamingvisuals te gebruiken in situaties waarin het essentieel is om de latentie tussen het pushen en visualiseren van gegevens te minimaliseren. U moet de gegevens in een indeling laten pushen die als zodanig kunnen worden gevisualiseerd, zonder dat er meer aggregaties nodig zijn. Voorbeelden van gegevens die gereed zijn zoals temperaturen en vooraf berekende gemiddelden.

PubNub-streaming semantisch model

Met een semantisch PubNub-streamingmodel gebruikt de Power BI-webclient de PubNub-SDK om een bestaande PubNub-gegevensstroom te lezen. De Power BI-service slaat geen gegevens op. Omdat de webclient deze aanroep rechtstreeks uitvoert, moet u, als u alleen goedgekeurd uitgaand verkeer van uw netwerk toestaat, verkeer vermelden naar PubNub als toegestaan. Zie het ondersteuningsartikel over het goedkeuren van uitgaand verkeer voor PubNub voor instructies.

Net als bij het semantische streamingmodel is er geen onderliggende Power BI-database met het PubNub-streaming-semantische model. U kunt geen rapportvisuals maken op basis van de gegevens die binnenkomen en u kunt geen rapportfunctionaliteit gebruiken, zoals filteren of Power BI-visuals. U kunt een semantisch PubNub-streamingmodel alleen visualiseren door een tegel toe te voegen aan het dashboard en een PubNub-gegevensstroom als bron te configureren.

Tegels op basis van een semantisch PubNub-streamingmodel zijn geoptimaliseerd voor het snel weergeven van realtime gegevens. Omdat Power BI rechtstreeks is verbonden met de PubNub-gegevensstroom, is er weinig latentie tussen het pushen van de gegevens naar de Power BI-service en het bijwerken van de visual.

Semantische modelmatrix streamen

In de volgende tabel worden de drie typen semantische modellen beschreven voor realtime streaming en worden de mogelijkheden en beperkingen ervan vermeld.

Mogelijkheid Push Streaming PubNub
Dashboardtegels worden in realtime bijgewerkt wanneer gegevens worden gepusht Ja.
Voor visuals die zijn gemaakt via rapporten en vervolgens zijn vastgemaakt aan het dashboard.
Ja.
Voor aangepaste streamingtegels die rechtstreeks aan het dashboard zijn toegevoegd.
Ja.
Voor aangepaste streamingtegels die rechtstreeks aan het dashboard zijn toegevoegd.
Dashboardtegels worden bijgewerkt met vloeiende animaties Nee. Ja. Ja.
Gegevens die permanent zijn opgeslagen in Power BI voor historische analyse Ja. Nee.
Gegevens worden tijdelijk gedurende één uur opgeslagen om visuals weer te geven.
Nee.
Power BI-rapporten maken op basis van de gegevens Ja. Nee. Nee.
Maximale snelheid van gegevensopname 1 aanvragen
16 MB/aanvraag
5 aanvragen
15 KB/aanvraag
N.v.t.
Gegevens worden niet naar Power BI gepusht.
Limieten voor gegevensdoorvoer 1M rijen/uur Geen. N.v.t.
Gegevens worden niet naar Power BI gepusht.

Gegevens naar semantische modellen pushen

In deze sectie wordt beschreven hoe u gegevens maakt en pusht naar de drie primaire typen realtime semantische modellen die u kunt gebruiken in realtime streaming.

U kunt gegevens naar een semantisch model pushen met behulp van de volgende methoden:

  • De REST API's van Power BI
  • De gebruikersinterface van het semantische power BI-streamingmodel
  • Azure Stream Analytics

Power BI REST API's gebruiken om gegevens te pushen

U kunt Rest API's van Power BI gebruiken om gegevens te maken en te verzenden om semantische modellen te pushen en naar semantische modellen te streamen. Wanneer u een semantisch model maakt met power BI REST API's, geeft de defaultMode vlag aan of het semantische model push of streaming is.

Als er geen defaultMode vlag is ingesteld, wordt het semantische model standaard ingesteld op een semantisch pushmodel. Als de defaultMode waarde is ingesteld pushStreamingop, is het semantische model zowel een push- als streaming-semantisch model en biedt het de voordelen van beide semantische modeltypen.

Notitie

Wanneer u semantische modellen gebruikt met de defaultMode vlag ingesteld op pushStreaming, als een aanvraag de beperking van 15 kB voor een semantisch streamingmodel overschrijdt, maar kleiner is dan de beperking van 16 MB voor een push-semantisch model, slaagt de aanvraag en worden de gegevens bijgewerkt in het semantische pushmodel. Streamingtegels mislukken echter tijdelijk.

Zodra een semantisch model is gemaakt, kunt u de PostRows REST API's gebruiken om gegevens te pushen . Alle aanvragen voor REST API's worden beveiligd met behulp van Microsoft Entra ID OAuth.

De semantische streamingmodelgebruikersinterface gebruiken om gegevens te pushen

In de Power BI-service kunt u een semantisch model maken door de API-benadering te selecteren, zoals wordt weergegeven in de volgende schermopname:

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

Wanneer u het nieuwe semantische streamingmodel maakt, kunt u analyse van historische gegevens inschakelen, zoals wordt weergegeven in de volgende schermopname. Deze selectie heeft een aanzienlijke invloed.

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

Wanneer analyse van historische gegevens is uitgeschakeld, zoals deze standaard is, maakt u een semantisch streamingmodel zoals eerder is beschreven. Wanneer analyse van historische gegevens is ingeschakeld, wordt het semantische model dat u maakt zowel een semantisch streamingmodel als een push-semantisch model. Deze instelling is gelijk aan het gebruik van de Power BI REST API's om een semantisch model te maken met de defaultMode set pushStreaming, zoals eerder beschreven.

Notitie

Voor het streamen van semantische modellen die zijn gemaakt met behulp van de Power BI-service-gebruikersinterface is geen Microsoft Entra-verificatie vereist. In dergelijke semantische modellen ontvangt de eigenaar van het semantische model een URL met een rijsleutel, waarmee de aanvrager gegevens naar het semantische model kan pushen zonder een OAuth-bearer-token van Microsoft Entra-id te gebruiken. De Microsoft Entra ID-benadering werkt echter nog steeds om gegevens naar het semantische model te pushen.

Azure Stream Analytics gebruiken om gegevens te pushen

U kunt Power BI toevoegen als uitvoer in Azure Stream Analytics en deze gegevensstromen vervolgens in realtime visualiseren in de Power BI-service. In deze sectie worden de technische details van dat proces beschreven.

Azure Stream Analytics maakt gebruik van de Power BI REST API's om de uitvoergegevensstroom naar Power BI te maken, met defaultMode de instelling ingesteld op pushStreaming. Het resulterende semantische model kan zowel pushen als streamen gebruiken. Wanneer u het semantische model maakt, stelt Azure Stream Analytics de retentionPolicy vlag in op basicFIFO. Met deze instelling slaat de database die ondersteuning biedt voor het push-semantische model 200.000 rijen op en worden rijen op fifo-wijze (first-in first-out) verwijderd.

Belangrijk

Als uw Azure Stream Analytics-query resulteert in zeer snelle uitvoer naar Power BI, bijvoorbeeld één of twee keer per seconde, begint Azure Stream Analytics de uitvoer in één aanvraag te batcheren. Deze batchverwerking kan ertoe leiden dat de aanvraaggrootte de limiet voor de streamingtegel overschrijdt en streamingtegels mogelijk niet worden weergegeven. In dit geval is het raadzaam om de snelheid van de gegevensuitvoer naar Power BI te vertragen. In plaats van bijvoorbeeld elke seconde een maximumwaarde aan te vragen, vraagt u een maximumwaarde aan van meer dan 10 seconden.

Uw semantische streaming-model in realtime instellen in Power BI

Om aan de slag te gaan met realtime streaming, kiest u een van de volgende manieren om streaminggegevens in Power BI te gebruiken:

  • Tegels met visuals van streaminggegevens
  • Semantische modellen die zijn gemaakt op basis van streaminggegevens die behouden blijven in Power BI

Voor beide opties moet u streaminggegevens instellen in Power BI. Ga als volgt te werk om uw semantische streaming-model in realtime te laten werken in Power BI:

  1. Selecteer een tegel toevoegen in een bestaand of nieuw dashboard.

  2. Selecteer op de pagina Een tegel toevoegen de optie Aangepaste streaminggegevens en selecteer vervolgens Volgende.

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

  3. Op de tegelPagina Een aangepaste streaminggegevens toevoegen kunt u een bestaand semantisch model selecteren of semantische modellen beheren selecteren om uw semantische streamingmodel te importeren als u er al een hebt gemaakt. Als u nog geen streaminggegevens hebt ingesteld, selecteert u Het semantische streamingmodel toevoegen om aan de slag te gaan.

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

  4. Selecteer op de pagina Nieuw semantisch streamingmodel DE API, Azure Stream of PubNub en selecteer vervolgens Volgende.

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

Een semantisch streamingmodel maken

Er zijn drie manieren om een realtime streaminggegevensfeed te maken die Power BI kan gebruiken en visualiseren:

  • Power BI REST API met behulp van een realtime streaming-eindpunt
  • Azure Stream
  • PubNub

In deze sectie worden de power BI REST API- en PubNub-opties beschreven en wordt uitgelegd hoe u een streamingtegel of semantisch model maakt op basis van de streaminggegevensbron. Vervolgens kunt u het semantische model gebruiken om rapporten te maken. Zie Power BI-uitvoer van Azure Stream Analytics voor meer informatie over de optie Azure Stream.

De Power BI REST API gebruiken

De Power BI REST API maakt realtime streaming eenvoudiger voor ontwikkelaars. Nadat u DE API hebt geselecteerd op het scherm Nieuw semantisch streamingmodel en Volgende hebt geselecteerd, kunt u vermeldingen opgeven waarmee Power BI verbinding kan maken met en uw eindpunt kan gebruiken. Zie De Power BI REST API's gebruiken voor meer informatie over de API.

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

Als u wilt dat Power BI de gegevens opslaat die deze gegevensstroom verzendt, zodat u rapporten en analyses kunt uitvoeren op de verzamelde gegevens, schakelt u analyse van historische gegevens in.

Nadat u de gegevensstroom hebt gemaakt, krijgt u een REST API-URL-eindpunt. Uw toepassing kan het eindpunt aanroepen met behulp van POST aanvragen om uw streaminggegevens naar het semantische Power BI-model te pushen. Zorg er in uw POST aanvragen voor dat de aanvraagbody overeenkomt met de voorbeeld-JSON die de power BI-gebruikersinterface heeft opgegeven. U kunt bijvoorbeeld uw JSON-objecten in een matrix verpakken.

Let op

Voor het streamen van semantische modellen die u in de Power BI-service gebruikersinterface maakt, haalt de semantische modeleigenaar een URL op die een resourcesleutel bevat. Met deze sleutel wordt de aanvrager gemachtigd om gegevens naar het semantische model te pushen zonder een OAuth-bearer-token van Microsoft Entra ID te gebruiken. Houd rekening met de gevolgen van het hebben van een geheime sleutel in de URL wanneer u met dit type semantisch model en deze methode werkt.

PubNub gebruiken

De integratie van PubNub-streaming met Power BI helpt u bij het maken en gebruiken van uw PubNub-gegevensstromen met lage latentie in Power BI. Wanneer u PubNub selecteert op het scherm Nieuw semantisch streamingmodel en Volgende selecteert, ziet u het volgende scherm:

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

Belangrijk

U kunt PubNub-kanalen beveiligen met behulp van een PAM-verificatiesleutel (PubNub Access Manager). Deze sleutel wordt gedeeld met alle gebruikers die toegang hebben tot het dashboard. Zie Toegang beheren voor meer informatie over PubNub-toegangsbeheer.

PubNub-gegevensstromen zijn vaak groot volume en zijn niet altijd geschikt voor opslag en historische analyse in hun oorspronkelijke vorm. Als u Power BI wilt gebruiken voor historische analyse van PubNub-gegevens, moet u de onbewerkte PubNub-stream aggregeren en naar Power BI verzenden, bijvoorbeeld met behulp van Azure Stream Analytics.

Voorbeeld van realtime streaming in Power BI

Hier volgt een voorbeeld van hoe realtime streaming in Power BI werkt. In dit voorbeeld wordt een openbaar beschikbare stream van PubNub gebruikt. Volg het voorbeeld om de waarde van realtime streaming voor uzelf te bekijken.

  1. Selecteer of maak een nieuw dashboard in de Power BI-service. Selecteer Boven aan het scherm de optie Een tegel toevoegen bewerken>.

  2. Selecteer in het scherm Een tegel toevoegen de optie Aangepaste streaminggegevens en selecteer vervolgens Volgende.

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

  3. Selecteer op de tegelPagina Een aangepaste streaminggegevens toevoegen de optie Semantisch streamingmodel toevoegen.

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

  4. Selecteer PubNub op de pagina Nieuw semantisch streamingmodel en selecteer vervolgens Volgende.

  5. Voer in het volgende scherm een Semantische modelnaam in, voer de volgende waarden in de volgende twee velden in en selecteer Vervolgens.

    • Subsleutel:sub-c-99084bc5-1844-4e1c-82ca-a01b18166ca8
    • Kanaalnaam: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. Behoud in het volgende scherm de automatisch ingevulde waarden en selecteer Maken.

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

  7. Maak in uw Power BI-werkruimte een nieuw dashboard en selecteer bovenaan het scherm Een tegel toevoegen>.

  8. Selecteer Aangepaste streaminggegevens en selecteer Volgende.

  9. Selecteer op de tegelPagina Een aangepaste streaminggegevens toevoegen uw nieuwe semantische streamingmodel en selecteer vervolgens Volgende.

    Speel rond met het semantische voorbeeldmodel. Door waardevelden toe te voegen aan lijndiagrammen en andere tegels toe te voegen, kunt u een realtime dashboard krijgen dat er als volgt uitziet:

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

Ga verder met het maken van uw eigen semantische modellen en het streamen van livegegevens naar Power BI.

Vragen en antwoorden

Hier volgen enkele veelgestelde vragen en antwoorden over realtime streaming in Power BI.

Kunt u filters gebruiken voor semantische push- of streamingmodellen?

Semantische streamingmodellen bieden geen ondersteuning voor filteren. Voor semantische pushmodellen kunt u een rapport maken, het rapport filteren en de gefilterde visuals vervolgens vastmaken aan een dashboard. Er is echter geen manier om het filter op de visual te wijzigen zodra het op het dashboard staat.

U kunt de liverapporttegel afzonderlijk vastmaken aan het dashboard en vervolgens kunt u de filters wijzigen. Live-rapporttegels worden echter niet in realtime bijgewerkt wanneer gegevens worden gepusht. U moet de visual handmatig bijwerken door rechtsboven op de dashboardpagina het pictogram Vernieuwen te selecteren.

Wanneer u filters toepast om semantische modellen met velden met DateTime precisie van milliseconden te pushen, worden equivalentieoperatoren niet ondersteund. Operators zoals groter dan > of kleiner dan < goed werken.

Hoe ziet u de meest recente waarde voor semantische push- of streamingmodellen?

Semantische streamingmodellen zijn ontworpen om de meest recente gegevens weer te geven. U kunt het visualtype Kaartstreaming gebruiken om eenvoudig de meest recente numerieke waarden te zien. Kaartvisuals bieden geen ondersteuning DateTime voor of Text gegevenstypen.

Als u een tijdstempel in het schema hebt voor het pushen van semantische modellen, kunt u proberen een rapportvisual te maken met het last N filter.

Hoe kunt u modellering uitvoeren op realtime semantische modellen?

Modellering is niet mogelijk in een semantisch streamingmodel, omdat de gegevens niet permanent worden opgeslagen. Voor een semantisch pushmodel kunt u de REST API van het semantische model maken om een semantisch model met relaties en metingen te maken en de REST API's van de updatetabel gebruiken om metingen toe te voegen aan bestaande tabellen.

Hoe kunt u alle waarden op een push- of streaming-semantisch model wissen?

In een semantisch pushmodel kunt u de REST API-aanroep rijen verwijderen. Er is geen manier om gegevens uit een semantisch streamingmodel te wissen, hoewel de gegevens na een uur zelf worden gewist.

Wat is er mis als u een Azure Stream Analytics-uitvoer instelt op Power BI, maar u deze niet ziet in Power BI?

Voer deze stappen uit om het probleem op te lossen:

  1. Start de Azure Stream Analytics-taak opnieuw op.
  2. Probeer uw Power BI-verbinding opnieuw te autoriseren in Azure Stream Analytics.
  3. Zorg ervoor dat u dezelfde werkruimte controleert in de Power BI-service die u hebt opgegeven voor de Uitvoer van Azure Stream Analytics.
  4. Zorg ervoor dat de Azure Stream Analytics-query expliciet naar de Power BI-uitvoer wordt uitgevoerd met behulp van het INTO trefwoord.
  5. Bepaal of de Azure Stream Analytics-taak gegevens bevat die er doorheen stromen. Het semantische model wordt alleen gemaakt wanneer gegevens worden verzonden.
  6. Bekijk de Azure Stream Analytics-logboeken om te zien of er waarschuwingen of fouten zijn.

Pagina automatisch vernieuwen

U kunt het automatisch vernieuwen van pagina's op rapportpaginaniveau gebruiken om een vernieuwingsinterval in te stellen voor visuals die alleen actief zijn wanneer de pagina wordt gebruikt. Pagina automatisch vernieuwen is alleen beschikbaar voor DirectQuery-gegevensbronnen. Het minimale vernieuwingsinterval is afhankelijk van het type werkruimte waarin het rapport wordt gepubliceerd en instellingen voor capaciteitsbeheerders voor Premium-werkruimten.

Zie Pagina automatisch vernieuwen in Power BI voor meer informatie over het automatisch vernieuwen van pagina's.