Esper - 我们可以使用esper进行流水线时尚处理吗?

时间:2016-07-26 07:33:37

标签: apache-storm complex-event-processing esper

我想以流水线方式使用Esper进行一些事件处理。我需要为每个事件检查多个案例。 例如,比方说,我想针对以下情况运行我的传入数据。我该怎么办?这样做的最佳方式是什么?

案例1 ="如果当前级别比最近5个连续值的平均值高400%,则使用例外1和#34标记事件;
案例2 ="如果当前级别值为null,则标记为例外-2"
案例3 ="如果案例2和案例3不匹配,则数据标记为' safe'"

以下是我想要做的粗略表示

     if (case1) { 
       mark with Exception 1 
     }

     if (case2) {
       mark with Exception 2 
     }

     if (none of the above cases matches) {
         mark as safe 
     }

1 个答案:

答案 0 :(得分:0)

像这样的东西

on Event 
insert into OutputStream select 'Exception 1' as label, * where level_detected > 400
insert into OutputStream select 'Exception 2' as label, * where level_detected = null
insert into OutputStream select 'safe' as label, *

您没有询问如何检测“如果当前级别比最近5个连续值的平均值高400%”,那么这不是我的答案的一部分。

Esper docs for split stream