Erstellen einer Abfrage für die Echtzeitvisualisierung

Abgeschlossen

Um Streamingdaten an Power BI zu senden, verwendet Ihr Azure Stream Analytics-Auftrag eine Abfrage, die die Ergebnisse in eine Power BI-Ausgabe schreibt. Eine einfache Abfrage, die Ereignisdaten von einem Event Hub direkt an Power BI weiterleitet, könnte etwa wie folgt aussehen:

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

Die Ergebnisse der Abfrage bestimmen das Schema der Tabelle im Ausgabedataset in Power BI.

Alternativ können Sie Ihre Abfrage verwenden, um die Daten zu filtern und/oder zu aggregieren und nur relevante oder zusammengefasste Daten an das Power BI-Dataset zu senden. Beispiel: Mit der folgenden Abfrage wird der maximale Messwert für jeden Sensor außer Sensor 0 für jede aufeinanderfolgende Minute berechnet, in der ein Ereignis auftritt.

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

Beim Arbeiten mit Fensterfunktionen (z. B. der TumblingWindow-Funktion im vorherigen Beispiel) sollten Sie beachten, dass Power BI in der Lage ist, einen Aufruf pro Sekunde zu verarbeiten. Darüber hinaus unterstützen Streamingvisualisierungen Pakete mit einer maximalen Größe von 15 KB. Sie sollten in der Regel Fensterfunktionen verwenden, um sicherzustellen, dass Daten nicht häufiger als einmal pro Sekunde an Power BI gesendet werden. Außerdem sollten Sie die in den Ergebnissen enthaltenen Felder minimieren, um die Größe der Datenlast zu optimieren.

Hinweis

Weitere Informationen zu den Beschränkungen von Power BI-Ausgaben finden Sie unter Power BI-Ausgabe aus Azure Stream Analytics in der Azure Stream Analytics-Dokumentation.