使用Esper内连接时有时不起作用

时间:2016-05-05 05:54:35

标签: esper

EPL是这样的:

select cast(a.ReportTime,date,dateformat:'yyyy-MM-dd') as ReportTime, a.Source, aa.RequestNum, a.ServerTotal, a.ServerSucc, b.Total, b.Succ, NULL as DataChange_LastTime, c.Response from IntlTotalCountEvent.win:time_batch(2 min) as aa inner join A.win:time_batch(2 min) as a on aa.ReportTime=a.ReportTime and aa.Source=a.Source inner join B.win:time_batch(2 min) as b on a.ReportTime=b.ReportTime and a.Source=b.Source inner join C.win:time_batch(1 min 30 sec) as c on a.ReportTime=c.ReportTime and a.Source=c.Source 有时它可以工作,但有时候不起作用,甚至Fields ReportTime和Source都使用相同的数据。

1 个答案:

答案 0 :(得分:0)

批处理窗口在事件到达时开始。因此,每个批处理窗口是独立的,并且相对于其他批处理窗口不对齐。如果要对齐批处理窗口,请使用上下文“创建上下文Every5Sec在2分钟后开始@now结束”和“win:keepall”而不是“win:batch”。