Re: 回复: 回复: 回复: Flink双流Join问题

2020-04-04 文章 Djeng Lee
;amp;gt;; gt; amp;nbsp;amp;nbsp;amp;nbsp; gt; amp;nbsp;amp;nbsp;amp;nbsp; 主题:amp;amp;nbsp;Re: 回复: Flink双流Join问题 gt; amp;nbsp;amp;nbsp;amp;nbsp; gt; amp;nbsp;amp;nbsp;amp;nbsp; gt; amp;nbsp;amp;nbsp;amp;nbsp; gt; amp;nbsp;amp;nbsp;amp;nbsp; 55000的窗口分配,是对windowSize 求模然后拿到sta

回复: 回复: 回复: Flink双流Join问题

2020-04-04 文章 忝忝向仧
gt; amp;nbsp;amp;nbsp;amp;nbsp; 收件人:amp;amp;nbsp;" user-zh@flink.apache.org"< gt; user-zh@flink.apache.orgamp;amp;gt;; gt; amp;nbsp;amp;nbsp;amp;nbsp; gt; amp;nbsp;amp;nbsp;amp;nbsp; 主题:amp;amp;nbsp;Re: 回复: Flink双流Join问题 gt; amp;nbsp;amp;nbsp;amp;nbsp; gt; amp;nbsp;amp;nbsp;amp;nbs

Re: 回复: 回复: Flink双流Join问题

2020-04-04 文章 Benchao Li
-原始邮件-- > 发件人:"libenchao" 发送时间:2020年4月4日(星期六) 晚上11:04 > 收件人:"user-zh" > 主题:Re: 回复: 回复: Flink双流Join问题 > > > > 两个stream输入的场景,operator的watermark是取两者的最小值。 > 所以虽然这条数据在第一个流里面看起来已经是肯定迟到了,但是有可能看第二个流的watermark它还没有过期。 > > > 忝忝向仧 <15

回复: 回复: 回复: Flink双流Join问题

2020-04-04 文章 忝忝向仧
额,明白了,意思是说两个流情况下 比如,stream1里面晚来的那条 1 tom_late 1553503185000的水印是1553503188000 但是stream2里面,这条1,jerry1,1553503185000的水印是1553503185000 所以取最小的,因此还是会被打印? 是这么理解么? --原始邮件--

Re: 回复: 回复: Flink双流Join问题

2020-04-04 文章 Benchao Li
jerry1 > 2 tom3=jerry2 > 2 tom3=jerry3 > 2 tom_late=jerry1 > 2 tom_late=jerry2 > 2 tom_late=jerry3 > > > > > > > > > > > > > --原始邮件-- > 发件人:"Djeng Lee" 发送时间:2020年4月4日(星期六) 晚上6:35 > 收件人:"user-zh

回复: 回复: 回复: Flink双流Join问题

2020-04-04 文章 忝忝向仧
Hi: 还有个疑问,我特意构造了个乱序的消息,还是3秒一个窗口 stream1: 1 tom1 1553503185000 1 tom2 1553503186000 1 tom3 1553503187000 1 tom4 1553503188000 1 tom_late 1553503185000 stream2: 1 jerry1 1553503185000 1 jerry2 1553503186000 1 jerry3 1553503187000 1 jerry4 1553503188000 我代码还是之前的代码,定义水印都是maxDelayAllowed =

回复: 回复: 回复: Flink双流Join问题

2020-04-04 文章 忝忝向仧
文档说明: https://ci.apache.org/projects/flink/flink-docs-release-1.10/zh/dev/event_timestamps_watermarks.html 这个网页我打不开,有其他的地址么? 谢谢 --原始邮件-- 发件人:"Djeng Lee"https://ci.apache.org/projects/flink/flink-docs-release-1.10/zh/dev/event_timestamps_watermarks.html 相关代码

Re: 回复: 回复: Flink双流Join问题

2020-04-04 文章 Djeng Lee
刚刚我说的不严谨 Start = 100055000 - (100055000 - 0 + 3000) % 3000 = 100053000 End = 100053000 + 3000 //源码位置,所以窗口开端并不是你传入首条记录的作为开端。窗口划分是从0时间戳切过来的。 文档说明: https://ci.apache.org/projects/flink/flink-docs-release-1.10/zh/dev/event_timestamps_watermarks.html 相关代码 public static long

回复: 回复: Flink双流Join问题

2020-04-04 文章 忝忝向仧
额,你的意思是滚动3秒的窗口开始和结束应该是 100055000 % 3 得出结果再拿到[start,end). 比如100055000 % 3 的结果是100053000,那么窗口是[100053000,100056000) 是这么理解吧 --原始邮件-- 发件人:"lee.roval"

Re: 回复: Flink双流Join问题

2020-04-04 文章 Djeng Lee
public static long getWindowStartWithOffset(long timestamp, long offset, long windowSize) { return timestamp - (timestamp - offset + windowSize) % windowSize; } 在 2020/4/4 下午6:23,“忝忝向仧”<153488...@qq.com> 写入: 对,我只是回复把前面那串省略了,没写.

Re: 回复: Flink双流Join问题

2020-04-04 文章 Djeng Lee
55000的窗口分配,是对windowSize 求模然后拿到start 和 end。 不是从你首条记录开始算。 在 2020/4/4 下午6:23,“忝忝向仧”<153488...@qq.com> 写入: 对,我只是回复把前面那串省略了,没写. [100053000,100056000),为什么是100053000开始? 我第一条输入的是 1,tom1,100055000 --原始邮件-- 发件人:"libenchao"

回复: Flink双流Join问题

2020-04-04 文章 忝忝向仧
对,我只是回复把前面那串省略了,没写. [100053000,100056000),为什么是100053000开始? 我第一条输入的是 1,tom1,100055000 --原始邮件-- 发件人:"libenchao"

Re: Flink双流Join问题

2020-04-04 文章 Djeng Lee
6000,前一条数据的水位线:100055000 > 3 (1,jerry2,100056000) > 2 tom1=jerry1 > > > > > > > > --原始邮件------ > 发件人:"lee.roval" 发送时间:2020年4月4日(星期六) 晚上6:10 > 收件人:"user-zh@flink.apache.org&q

Re: Flink双流Join问题

2020-04-04 文章 Benchao Li
> > --原始邮件------ > 发件人:"lee.roval" 发送时间:2020年4月4日(星期六) 晚上6:10 > 收件人:"user-zh@flink.apache.org" > 主题:Re: Flink双流Join问题 > > > > 56000后不是下发新的watermark了嘛 > > 在 2020/4/4 下午5:57,“忝忝向仧”<153488...@qq.com 写入: > > 各位好:nbsp; nbsp

Re: Flink双流Join问题

2020-04-04 文章 Djeng Lee
56000后不是下发新的watermark了嘛 在 2020/4/4 下午5:57,“忝忝向仧”<153488...@qq.com> 写入: 各位好:Flink双流Join遇到一个问题,能否解释下,谢谢. ds1和ds2分别读取kafka两个流数据,使用event time和watermark特性,3s的一个翻滚窗口,定义如下: 最后,join输出的时候,为什么触发窗口的数据第二条就触发了?

Re: Flink双流Join问题

2020-04-04 文章 Benchao Li
Hi 你的图片在邮件中显示不了。可以先把图片上传到第三方图床再把链接放到这里,或者直接以文本的形式发送。 忝忝向仧 <153488...@qq.com> 于2020年4月4日周六 下午4:47写道: > 各位好: > Flink双流Join遇到一个问题,能否解释下,谢谢. > ds1和ds2分别读取kafka两个流数据,使用event time和watermark特性,3s的一个翻滚窗口,定义如下: > 最后,join输出的时候,为什么触发窗口的数据第二条就触发了? > >