如何从不同的IoT设备过滤Azure流分析输入数据并将其处理为PowerBI

时间:2016-04-26 20:25:37

标签: azure iot powerbi

我在Azure IoT中心配置了3台设备。他们都发送相同类型的数据(温度,湿度,光线及其deviceId)。我使用此IoT中心作为Azure流分析的输入。然后应该通过查询基于deviceId对其进行过滤。我使用PowerBI作为输出。在PowerBI中,我想制作一个显示三个设备温度的折线图。目前,我为每个设备使用PowerBI输出,在PowerBI中创建三个数据集,遗憾的是无法组合数据集。

有什么建议吗?

现在我使用此查询

WITH outputSander as(
    SELECT temp,deviceId,System.TIMESTAMP as time
    from Sensordata
    where deviceId = 'Raspberry_Pi_Sander'),
outputKoen as(
    SELECT temp,deviceId,System.TIMESTAMP as time
    from Sensordata
    where deviceId = 'Raspberry_Pi_Koen')
--outputLukas as(
  --  SELECT temp,deviceId,System.TIMESTAMP as time
   -- from Sensordata
   -- where deviceId = 'Raspberry_Pi_Lukas')
    select s1, s2
INTO
    [outputData]
FROM
    outputSander s1 LEFT JOIN outputKoen s2 on(DATEDIFF(s, s1, s2) BETWEEN 0 AND 5)

作为输出,我希望看到类似的东西:

S1.temp S1.deviceId,S1.time,S2.temp,S2.deviceId,S2.time分别带有正确的值。

1 个答案:

答案 0 :(得分:0)

您可以使用JOIN子句将多个流连接成一个并将其指向一个输出。在您的情况下,可以有一个额外的字段可用于连接。

https://blogs.technet.microsoft.com/machinelearning/2015/06/01/the-azure-stream-analytics-query-language/