HI,再次补充一下我的场景,如下图所示:
1、kafka TopicA的Partiton1的数据包含3个user的数据
2、flink在对该分区生成了w1、w2、w3...的watermark

问题来了:
1、w1、w2、w3...的watermark只能保证user1、user2、user3的整体数据的有序处理对吗?
2、在对user1、user2、user3进行keyby后,w1、w2、w3...的watermark能保证user1或者user2或者user3的有序处理吗?

期待大神的回复!
[image: image.png]

jun su <[email protected]> 于2020年3月31日周二 下午1:10写道:

> hi,
> keyby后的watermark应该是上游多个线程中最小的watermark , 所以数据虽然可能乱序, 但是watermark并不会乱,
> 不会影响后续的窗口触发
>
> tingli ke <[email protected]> 于2020年3月31日周二 上午9:54写道:
>
> > 您好,
> > 针对您的回复,现在的场景是这样子的
> > 1、kafka存在多个partition,针对多个Partiton,flink watermark assiger会对每个Partiton
> > 发射 watermark;
> > 2、在第一个前提下,水位已经设置好了,还可以在keyby之后在次设置watermark吗?
> > 3、是否存在可以不用经过第一个前提的方案,直接在keyby之后设置watermark?
> >
> > Jimmy Wong <[email protected]> 于2020年3月30日周一 下午9:13写道:
> >
> > > Hi,
> > > watermark 可以在 keyBy 后分配,但是最好紧跟 SourceFunction。经过 KeyBy
> > > 或其他分配策略,可能导致数据更大的延迟(EventTime)。
> > >
> > >
> > > “想做key化的乱序处理” 这句没太理解,麻烦解释下。
> > >
> > >
> > > | |
> > > Jimmy Wong
> > > |
> > > |
> > > [email protected]
> > > |
> > > 签名由网易邮箱大师定制
> > >
> > >
> > > 在2020年03月30日 20:58,tingli ke<[email protected]> 写道:
> > > 请教一个问题:kafka-per-partition 的watermark的分配,可以在keyby之后分配吗,想做key化的乱序处理能支持吗
> > >
> >
>
>
> --
> Best,
> Jun Su
>

回复