过滤部分

时间:2016-09-21 13:20:41

标签: java complex-event-processing siddhi

我的传入事件包含userId属性。我希望能够根据CQEngine中的userId读取参数值。我应该将其实现为FunctionExecutor的扩展并使用它:

define stream cseEventStream (userId string, symbol string, price long, volume long);
@info(name = 'query1')
from cseEventStream [price < custom:cache(userId)]
select *
insert into Output

还是有更好的方法可以做到这一点。问题是在第一次使用CQEngine之前我需要用数据初始化它。可能&#34;开始&#34; FunctionExecutor的方法可以用于此目的吗?

1 个答案:

答案 0 :(得分:0)

您可以继续使用FunctionExecutor并在init()start()内实施初始化逻辑。每个函数使用都将调用两次。致电订单为init(),后跟start()。但是,根据API文档,建议使用start()获取处理元素所需的资源。并stop()释放获得的资源。