Proton CEP Fiware:删除旧收到的活动

时间:2016-03-15 10:19:35

标签: fiware complex-event-processing fiware-cep

我对Proton CEP有这样的问题:我目前有一个“序列”EPA;它的输入是2个事件。但是这些事件具有不同的粒度:假设我有A和B事件;我收到N“A”事件和M“B”事件,其中M <&lt;&lt; N. 所以我想要一个规则,如“如果在X秒内没有消耗A类事件,则删除它”,否则我有一个很长的A事件队列;我只需要对最近(暂时)事件进行评估。 实际上,我有一个假的室温传感器,每隔5秒发送一次温度更新,我还有另一个程序可以检查外部天气并每分钟发送一次。

知道如何解决这种情况吗?

非常感谢!

2 个答案:

答案 0 :(得分:0)

我想在&#34;消费&#34;你的意思是到达,所以你想评估A事件到达质子pcoressor的时间吗?还是A事件之间的时间?你想确保A事件在修正率方面确实是连续的吗? &#34;删除&#34;事件意味着忽略它,因为事件不会保存在任何地方,只是处理完毕。最后,你想在这里发现什么?比如,与室外温度相比,室温的趋势是什么?然后,相应地发出输出事件?

感谢。

答案 1 :(得分:0)

所有相关事件实例都保持在相应EPA的本地状态。 对于每个EPA操作数,您都有策略规定如何收集状态以及如何构建事件派生的匹配集。 例如,每个操作数定义的实例选择策略,其值为“Every”,“First”和“Last”将告诉您是否检查所有A实例是否与B实例匹配,或者第一个(按顺序)到达),或最后。 一旦检测到序列,消费政策就会说明如何处理操作数状态 - 如果参与序列的A的实例从EPA的状态中删除(“消耗”策略的价值),或者它们是否应该保留。

使用这些策略的组合可以为您提供所需的行为