Lekérdezés létrehozása valós idejű vizualizációhoz

Befejeződött

Streamelési adatok Power BI-ba való küldéséhez az Azure Stream Analytics-feladat egy lekérdezést használ, amely az eredményeket egy Power BI-kimenetbe írja. Egy egyszerű lekérdezés, amely közvetlenül az eseményközpontból továbbítja az eseményadatokat a Power BI-nak, a következőképpen nézhet ki:

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

A lekérdezés eredményei határozzák meg a tábla sémáját a Power BI kimeneti adathalmazában.

Másik lehetőségként a lekérdezéssel szűrheti és/vagy összesítheti az adatokat, és csak releváns vagy összesített adatokat küldhet a Power BI-adathalmaznak. Az alábbi lekérdezés például kiszámítja a 0-s érzékelőn kívüli összes érzékelő maximális olvasását minden olyan egymást követő percben, amelyben esemény történik.

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

Az ablakfüggvények (például az előző példában a TumblingWindow függvény) használatakor vegye figyelembe, hogy a Power BI képes másodpercenként kezelni a hívásokat. Emellett a streamvizualizációk támogatják a legfeljebb 15 KB méretű csomagokat. Általános szabályként az ablakfüggvények használatával biztosíthatja, hogy az adatok ne legyenek gyakrabban elküldve a Power BI-ba, mint másodpercenként, és minimalizálja az eredményekben szereplő mezőket az adatbetöltés méretének optimalizálása érdekében.

Megjegyzés:

A Power BI kimeneti korlátaival kapcsolatos további információkért tekintse meg az Azure Stream Analytics Power BI-kimenetét az Azure Stream Analytics dokumentációjában.