I want to group data by time with Siddhi. I have a test based on https://docs.wso2.com/display/SP400/Incremental+Analysis.
@App:name("DataAggregation")
@App:description("Incremental aggregation")
define stream InputStream (sensorid long, value double, timestamp long);
@store( type="rdbms", jdbc.url="jdbc:mysql://localhost:3306/test", username="root", password="xxx", jdbc.driver.name="com.mysql.jdbc.Driver")
define aggregation DataAggregation from InputStream select sensorid, sum(value) as total group by sensorid aggregate by timestamp every hour ... month;
I send multiple events:
sensorid:1, value: 1.0, timestamp:2018-09-10 01:00
sensorid:1, value: 2.0, timestamp:2018-09-10 02:00
...
sensorid:1, value: 23.0, timestamp:2018-09-10 23:00
sensorid:1, value: 24.0, timestamp:2018-09-11 00:00
sensorid:1, value: 25.0, timestamp:2018-09-11 01:00
...
Siddhi saves hourly data and it calculates daily data. If then I send some events of August month:
sensorid:1, value: 10.0, timestamp:2018-08-10 01:00
sensorid:1, value: 20.0, timestamp:2018-08-10 02:00
...
sensorid:1, value: 230.0, timestamp:2018-08-10 23:00
sensorid:1, value: 240.0, timestamp:2018-08-11 00:00
sensorid:1, value: 250.0, timestamp:2018-08-11 01:00
Why are August events ignored and Siddhi does not store them?
Thanks