如何在窗口中维护一组事件属性?

时间:2017-01-27 09:10:22

标签: esper nesper

是否可以创建一个包含主键和Set作为辅助列的表,它类似于散列表值中的列表?

类似的东西:

create table T (id int primary key, list HashSet )

其中列表将包含与通过窗口大小发生的主键相关的所有属性。

编辑:

这是我得到的输出。我想要的是保持独特的出现次数达到id 1,2和3。 如果Occurence 2在ID 1到达3次,我仍然只想要1作为唯一,而不是3

{unique=3, id=1}
{unique=3, id=2}
{unique=4, id=3}
****************

在java中没问题,但我不明白如何在Esper中实现它。我甚至不确定使用表格是否正确。

1 个答案:

答案 0 :(得分:1)

表可以有聚合状态类型列。所以“窗口”聚合是可用的。例如:

create table MyTable (id int primary key, theWindow window(*) @type(MyEvent))

into table MyTable select window(*) as theWindow from MyEvent group by id

或者表可以声明列表类型列“create table MyTable(id int primary key,somelist java.util.List)”,您可以通过EPL中的函数调用来维护列表。

相关问题