码迷,mamicode.com
首页 > 其他好文 > 详细

Esper epl语句实验

时间:2015-07-17 12:15:33      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:

基础代码见下,下文列举的实验都是在此程序基础上修改。

all,snapshot,first

String epl = "select * from appTable.win:time(5 sec) output all every 2 seconds";
可以看到,输出时将事件从队列中移除。已经输出的下次不再输出。
================
newEventName:appTable	name:0	age:0
newEventName:appTable	name:1	age:1
================
newEventName:appTable	name:2	age:2
newEventName:appTable	name:3	age:3
================
newEventName:appTable	name:4	age:4
newEventName:appTable	name:5	age:5
================

String epl = "select * from appTable.win:time(5 sec) output snapshot every 2 seconds";
输出的是快照,事件不从队列中移除。
================
newEventName:appTable	name:0	age:0
newEventName:appTable	name:1	age:1
newEventName:appTable	name:2	age:2
================
newEventName:appTable	name:0	age:0
newEventName:appTable	name:1	age:1
newEventName:appTable	name:2	age:2
newEventName:appTable	name:3	age:3
newEventName:appTable	name:4	age:4
================
newEventName:appTable	name:2	age:2
newEventName:appTable	name:3	age:3
newEventName:appTable	name:4	age:4
newEventName:appTable	name:5	age:5
================

String epl = "select * from appTable.win:time(5 sec) output first every 2 seconds";
只输出进入窗口的第一条数据。
================
newEventName:appTable	name:0	age:0
================
newEventName:appTable	name:3	age:3
================
newEventName:appTable	name:5	age:5
================
newEventName:appTable	name:7	age:7
================

insert前后的时间窗口

String epl2 = "insert into appTable2 select t.id as id, t.price as price from appTable.win:time(5 sec) as t output all every 1 seconds";
String epl3 = "select * from appTable2.win:time(5 sec) output all every 5 seconds";	
为epl3配置监听。
可以看到,第一个5秒就有输出。
第1秒
第2秒
第3秒
第4秒
第5秒
newEventName:appTable2	name:0	age:0
newEventName:appTable2	name:1	age:1
newEventName:appTable2	name:2	age:2
newEventName:appTable2	name:3	age:3
newEventName:appTable2	name:4	age:4
================
第6秒
第7秒
第8秒
第9秒
第10秒
newEventName:appTable2	name:5	age:5
newEventName:appTable2	name:6	age:6
newEventName:appTable2	name:7	age:7
newEventName:appTable2	name:8	age:8
newEventName:appTable2	name:9	age:9
================
第11秒


String epl2 = "insert into appTable2 select t.id as id, t.price as price from appTable.win:time(5 sec) as t output all every 5 seconds";
String epl3 = "select * from appTable2.win:time(5 sec) output all every 5 seconds";	
为epl3配置监听。
可以看到,第二个5秒才有输出。
第1秒
第2秒
第3秒
第4秒
第5秒
第6秒
第7秒
第8秒
第9秒
newEventName:appTable2	name:0	age:0
newEventName:appTable2	name:1	age:1
newEventName:appTable2	name:2	age:2
newEventName:appTable2	name:3	age:3
newEventName:appTable2	name:4	age:4
================
第10秒
第11秒


版权声明:本文为博主原创文章,未经博主允许不得转载。

Esper epl语句实验

标签:

原文地址:http://blog.csdn.net/chuchus/article/details/46922925

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!