Realtime streaming in Power BI
Belangrijk
Vanaf 31 oktober 2024 wordt het maken van nieuwe realtime semantische modellen niet meer ondersteund, waaronder push-semantische modellen, streaming semantische modellen, PubNub-streaming semantische modellen en streaminggegevenstegels. Uw bestaande semantische streamingmodellen worden niet beïnvloed. Zie de aankondiging van het blogbericht voor meer informatie over het buiten gebruik stellen van realtime streaming in Power BI. Microsoft raadt gebruikers aan real-time intelligence in Microsoft Fabric te verkennen.
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.
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 pushStreaming
op, 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:
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.
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:
Selecteer een tegel toevoegen in een bestaand of nieuw dashboard.
Selecteer op de pagina Een tegel toevoegen de optie Aangepaste streaminggegevens en selecteer vervolgens Volgende.
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.
Selecteer op de pagina Nieuw semantisch streamingmodel DE API, Azure Stream of PubNub en selecteer vervolgens Volgende.
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.
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:
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.
Selecteer of maak een nieuw dashboard in de Power BI-service. Selecteer Boven aan het scherm de optie Een tegel toevoegen bewerken>.
Selecteer in het scherm Een tegel toevoegen de optie Aangepaste streaminggegevens en selecteer vervolgens Volgende.
Selecteer op de tegelPagina Een aangepaste streaminggegevens toevoegen de optie Semantisch streamingmodel toevoegen.
Selecteer PubNub op de pagina Nieuw semantisch streamingmodel en selecteer vervolgens Volgende.
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
Behoud in het volgende scherm de automatisch ingevulde waarden en selecteer Maken.
Maak in uw Power BI-werkruimte een nieuw dashboard en selecteer bovenaan het scherm Een tegel toevoegen>.
Selecteer Aangepaste streaminggegevens en selecteer Volgende.
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:
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:
- Start de Azure Stream Analytics-taak opnieuw op.
- Probeer uw Power BI-verbinding opnieuw te autoriseren in Azure Stream Analytics.
- Zorg ervoor dat u dezelfde werkruimte controleert in de Power BI-service die u hebt opgegeven voor de Uitvoer van Azure Stream Analytics.
- Zorg ervoor dat de Azure Stream Analytics-query expliciet naar de Power BI-uitvoer wordt uitgevoerd met behulp van het
INTO
trefwoord. - Bepaal of de Azure Stream Analytics-taak gegevens bevat die er doorheen stromen. Het semantische model wordt alleen gemaakt wanneer gegevens worden verzonden.
- 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.