Een query maken voor realtime visualisatie

Voltooid

Voor het verzenden van streaminggegevens naar Power BI gebruikt uw Azure Stream Analytics-taak een query waarmee de resultaten naar een Power BI-uitvoer worden geschreven. Een eenvoudige query waarmee gebeurtenisgegevens van een Event Hub rechtstreeks naar Power BI worden doorgestuurd, ziet er ongeveer als volgt uit:

SELECT
    EventEnqueuedUtcTime AS ReadingTime,
    SensorID,
    ReadingValue
INTO
    [powerbi-output]
FROM
    [eventhub-input] TIMESTAMP BY EventEnqueuedUtcTime

De resultaten van de query bepalen het schema van de tabel in de uitvoergegevensset in Power BI.

U kunt uw query ook gebruiken om de gegevens te filteren en/of samen te voegen, zodat alleen relevante of samengevatte gegevens naar de Power BI-gegevensset worden verzonden. Met de volgende query wordt bijvoorbeeld de maximale leesbewerking voor elke andere sensor berekend dan sensor 0 voor elke opeenvolgende minuut waarin een gebeurtenis plaatsvindt.

SELECT
    DateAdd(second, -60, System.TimeStamp) AS StartTime,
    System.TimeStamp AS EndTime,
    SensorID,
    MAX(ReadingValue) AS MaxReading
INTO
    [powerbi-output]
FROM
    [eventhub-input] TIMESTAMP BY EventEnqueuedUtcTime
WHERE SensorID <> 0
GROUP BY SensorID, TumblingWindow(second, 60)
HAVING COUNT(*) > 1

Wanneer u werkt met vensterfuncties (zoals de functie TumblingWindow in het vorige voorbeeld), moet u overwegen dat Power BI elke seconde een aanroep kan verwerken. Daarnaast ondersteunen streamingvisualisaties pakketten met een maximale grootte van 15 kB. Als algemene regel gebruikt u vensterfuncties om ervoor te zorgen dat gegevens niet vaker dan elke seconde naar Power BI worden verzonden en de velden in de resultaten minimaliseren om de grootte van de gegevensbelasting te optimaliseren.