回复:keyby的乱序处理
1.未keyby的话,user1 user2 user3的顺序取决于分区策略,比如forward他们还是会在一个subtask上,顺序还是有序的,如果被打散的话就不确定了 2.keyby的话,可以保证同一个key的后续数据保持有序,不同的key不能保证一定有序 | | Sun.Zhu | | 邮箱:17626017...@163.com | Signature is customized by Netease Mail Master 在2020年03月31日 15:39,tingli ke 写道: 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的有序处理吗? 期待大神的回复! jun su 于2020年3月31日周二 下午1:10写道: hi, keyby后的watermark应该是上游多个线程中最小的watermark , 所以数据虽然可能乱序, 但是watermark并不会乱, 不会影响后续的窗口触发 tingli ke 于2020年3月31日周二 上午9:54写道: > 您好, > 针对您的回复,现在的场景是这样子的 > 1、kafka存在多个partition,针对多个Partiton,flink watermark assiger会对每个Partiton > 发射 watermark; > 2、在第一个前提下,水位已经设置好了,还可以在keyby之后在次设置watermark吗? > 3、是否存在可以不用经过第一个前提的方案,直接在keyby之后设置watermark? > > Jimmy Wong 于2020年3月30日周一 下午9:13写道: > > > Hi, > > watermark 可以在 keyBy 后分配,但是最好紧跟 SourceFunction。经过 KeyBy > > 或其他分配策略,可能导致数据更大的延迟(EventTime)。 > > > > > > “想做key化的乱序处理” 这句没太理解,麻烦解释下。 > > > > > > | | > > Jimmy Wong > > | > > | > > wangzmk...@163.com > > | > > 签名由网易邮箱大师定制 > > > > > > 在2020年03月30日 20:58,tingli ke 写道: > > 请教一个问题:kafka-per-partition 的watermark的分配,可以在keyby之后分配吗,想做key化的乱序处理能支持吗 > > > -- Best, Jun Su
Re: keyby的乱序处理
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 于2020年3月31日周二 下午1:10写道: > hi, > keyby后的watermark应该是上游多个线程中最小的watermark , 所以数据虽然可能乱序, 但是watermark并不会乱, > 不会影响后续的窗口触发 > > tingli ke 于2020年3月31日周二 上午9:54写道: > > > 您好, > > 针对您的回复,现在的场景是这样子的 > > 1、kafka存在多个partition,针对多个Partiton,flink watermark assiger会对每个Partiton > > 发射 watermark; > > 2、在第一个前提下,水位已经设置好了,还可以在keyby之后在次设置watermark吗? > > 3、是否存在可以不用经过第一个前提的方案,直接在keyby之后设置watermark? > > > > Jimmy Wong 于2020年3月30日周一 下午9:13写道: > > > > > Hi, > > > watermark 可以在 keyBy 后分配,但是最好紧跟 SourceFunction。经过 KeyBy > > > 或其他分配策略,可能导致数据更大的延迟(EventTime)。 > > > > > > > > > “想做key化的乱序处理” 这句没太理解,麻烦解释下。 > > > > > > > > > | | > > > Jimmy Wong > > > | > > > | > > > wangzmk...@163.com > > > | > > > 签名由网易邮箱大师定制 > > > > > > > > > 在2020年03月30日 20:58,tingli ke 写道: > > > 请教一个问题:kafka-per-partition 的watermark的分配,可以在keyby之后分配吗,想做key化的乱序处理能支持吗 > > > > > > > > -- > Best, > Jun Su >
Re: keyby的乱序处理
hi, keyby后的watermark应该是上游多个线程中最小的watermark , 所以数据虽然可能乱序, 但是watermark并不会乱, 不会影响后续的窗口触发 tingli ke 于2020年3月31日周二 上午9:54写道: > 您好, > 针对您的回复,现在的场景是这样子的 > 1、kafka存在多个partition,针对多个Partiton,flink watermark assiger会对每个Partiton > 发射 watermark; > 2、在第一个前提下,水位已经设置好了,还可以在keyby之后在次设置watermark吗? > 3、是否存在可以不用经过第一个前提的方案,直接在keyby之后设置watermark? > > Jimmy Wong 于2020年3月30日周一 下午9:13写道: > > > Hi, > > watermark 可以在 keyBy 后分配,但是最好紧跟 SourceFunction。经过 KeyBy > > 或其他分配策略,可能导致数据更大的延迟(EventTime)。 > > > > > > “想做key化的乱序处理” 这句没太理解,麻烦解释下。 > > > > > > | | > > Jimmy Wong > > | > > | > > wangzmk...@163.com > > | > > 签名由网易邮箱大师定制 > > > > > > 在2020年03月30日 20:58,tingli ke 写道: > > 请教一个问题:kafka-per-partition 的watermark的分配,可以在keyby之后分配吗,想做key化的乱序处理能支持吗 > > > -- Best, Jun Su
Re: keyby的乱序处理
您好, 针对您的回复,现在的场景是这样子的 1、kafka存在多个partition,针对多个Partiton,flink watermark assiger会对每个Partiton 发射 watermark; 2、在第一个前提下,水位已经设置好了,还可以在keyby之后在次设置watermark吗? 3、是否存在可以不用经过第一个前提的方案,直接在keyby之后设置watermark? Jimmy Wong 于2020年3月30日周一 下午9:13写道: > Hi, > watermark 可以在 keyBy 后分配,但是最好紧跟 SourceFunction。经过 KeyBy > 或其他分配策略,可能导致数据更大的延迟(EventTime)。 > > > “想做key化的乱序处理” 这句没太理解,麻烦解释下。 > > > | | > Jimmy Wong > | > | > wangzmk...@163.com > | > 签名由网易邮箱大师定制 > > > 在2020年03月30日 20:58,tingli ke 写道: > 请教一个问题:kafka-per-partition 的watermark的分配,可以在keyby之后分配吗,想做key化的乱序处理能支持吗 >
Re: keyby的乱序处理
您好, 非常感谢您的回复! key化就是keyby之后的,个人理解为keyed(key 化),和您回答的“watermark 可以在 keyBy 后分配”是同一个话题。 Jimmy Wong 于2020年3月30日周一 下午9:13写道: > Hi, > watermark 可以在 keyBy 后分配,但是最好紧跟 SourceFunction。经过 KeyBy > 或其他分配策略,可能导致数据更大的延迟(EventTime)。 > > > “想做key化的乱序处理” 这句没太理解,麻烦解释下。 > > > | | > Jimmy Wong > | > | > wangzmk...@163.com > | > 签名由网易邮箱大师定制 > > > 在2020年03月30日 20:58,tingli ke 写道: > 请教一个问题:kafka-per-partition 的watermark的分配,可以在keyby之后分配吗,想做key化的乱序处理能支持吗 >
回复:keyby的乱序处理
Hi, watermark 可以在 keyBy 后分配,但是最好紧跟 SourceFunction。经过 KeyBy 或其他分配策略,可能导致数据更大的延迟(EventTime)。 “想做key化的乱序处理” 这句没太理解,麻烦解释下。 | | Jimmy Wong | | wangzmk...@163.com | 签名由网易邮箱大师定制 在2020年03月30日 20:58,tingli ke 写道: 请教一个问题:kafka-per-partition 的watermark的分配,可以在keyby之后分配吗,想做key化的乱序处理能支持吗
keyby的乱序处理
请教一个问题:kafka-per-partition 的watermark的分配,可以在keyby之后分配吗,想做key化的乱序处理能支持吗