时间间隔事件
Time interval events
我正在使用 externalTime / externalTimeBatch 来计算在特定时间间隔内发生的事件的平均值,如下所示
from sensorStream#window.externalTimeBatch(meta_timestamp, 60 sec, meta_timestamp, 60 sec) [sensorValue > 100]
select meta_timestamp, avg(sensorValue) as sensorValue
insert into filteredStream
我遇到的问题是,总是从一开始就计算所有事件的平均值,而不是在时间间隔上重置。
最好的使用方法是什么。
谢谢。
下面的查询似乎使用滚动时间间隔进行了适当的平均。一旦我移动我的时间持有人属性 "meta_timestamp" 以跨越我的时间 window 它就正常工作了。
from sensorStream#window.externalTimeBatch(meta_timestamp, 1 min, 0, 1 min) [sensorValue > 100]
select meta_timestamp, meta_sensorName, correlation_longitude, correlation_latitude, avg(sensorValue) as sensorValue
insert current events into filteredStream
示例 POST 已发送消息进行测试
{
"event":
{
"metaData":
{
"timestamp":1514801340000,
"isPowerSaverEnabled": false,
"sensorId": 701,
"sensorName": "temperature"
},
"correlationData":
{
"longitude": 4.504343,
"latitude": 20.44345
},
"payloadData":
{
"humidity": 2.3,
"sensorValue": 150
}
}
}
感谢收听!!
我正在使用 externalTime / externalTimeBatch 来计算在特定时间间隔内发生的事件的平均值,如下所示
from sensorStream#window.externalTimeBatch(meta_timestamp, 60 sec, meta_timestamp, 60 sec) [sensorValue > 100]
select meta_timestamp, avg(sensorValue) as sensorValue
insert into filteredStream
我遇到的问题是,总是从一开始就计算所有事件的平均值,而不是在时间间隔上重置。
最好的使用方法是什么。
谢谢。
下面的查询似乎使用滚动时间间隔进行了适当的平均。一旦我移动我的时间持有人属性 "meta_timestamp" 以跨越我的时间 window 它就正常工作了。
from sensorStream#window.externalTimeBatch(meta_timestamp, 1 min, 0, 1 min) [sensorValue > 100]
select meta_timestamp, meta_sensorName, correlation_longitude, correlation_latitude, avg(sensorValue) as sensorValue
insert current events into filteredStream
示例 POST 已发送消息进行测试
{
"event":
{
"metaData":
{
"timestamp":1514801340000,
"isPowerSaverEnabled": false,
"sensorId": 701,
"sensorName": "temperature"
},
"correlationData":
{
"longitude": 4.504343,
"latitude": 20.44345
},
"payloadData":
{
"humidity": 2.3,
"sensorValue": 150
}
}
}
感谢收听!!