私が思う最良のアプローチは、次のような期間のコンテキストを定義することです。
create context DailyMeasurementAggregation
context DailySourcePartition
partition by measurement.source.value from MeasurementCreated,
context DailyTimerPartition
start (0,0,*,*,*,0)
end (59,23,*,*,*,59);
context DailyMeasurementAggregation
select
count(m) as count,
sum(getNumber(m, "myMeasurement.M.value")) as sum
from MeasurementCreated m
where getObject(m, "myMeasurement.M") is not null
output last when terminated;
他の範囲のcron 構文は次のようになります。0) 終了 (59,23,最後, , ,59)
毎週は日曜日から土曜日までなので、数字を調整する必要があるかもしれません. cron 構文に関する esper ドキュメントの一部は次のとおりです。
end after 1 day のようなことをしようとしましたが、1日おきにしかコンテキストがないため、これはうまくいかないようです。そのため、コンテキストを 1 秒早く終了しました。