我是esper epl查询的新手。我想知道是否可以在运行时更改EPL查询。这意味着我有一个表单可以用来改变ESPER中的时间长度,记录数量。它简直就是像这样,增加epl查询中的时间长度,事件中的记录数。喜欢我想以实用方式更改参数。我想知道这是否可能,如果是,请给我一些启示提示。 感谢
答案 0 :(得分:1)
根据您的实际要求,您可以使用Variables
。
来自Esper Docs:
除了通过create variable语法创建变量外,还有 运行时和引擎配置API还允许添加变量。该 下一个代码片段说明了运行时配置API的使用 创建一个字符串类型的变量:
epService.getEPAdministrator().getConfiguration().addVariable("myVar", String.class, "init value");
然后您可以在查询中use variables。例如(再次来自Esper docs):
下一个语句假定一个名为' var_threshold'的变量。是 创建以保持总价格阈值。声明输出 当符号的总价格大于当前价格时的事件 门槛值:
select symbol, sum(price) from TickEvent group by symbol having sum(price) > var_threshold
因此,如果您确切知道要参数化的内容,那么您可以使查询更具动态性。