恩恩,我是刚接触flink不久,所以很多地方没有很清楚,谢谢指点
---原始邮件--- 发件人: "tison"<[hidden email]> 发送时间: 2020年5月24日(周日) 晚上10:10 收件人: "user-zh"<[hidden email]>; 主题: Re: 关于水位线Watermark的理解 整体没啥问题,但是我看你说【假如第一个数据的事件时间刚好为12:00的,那么此时水位线应该在11:59】,这个 Watermark 跟 allowedLateness 没啥关系哈,是独立的逻辑。 文档层面你可以看看[1],源码你可以看看[2]里面检索 allowedLateness Best, tison. [1] https://ci.apache.org/projects/flink/flink-docs-stable/dev/stream/operators/windows.html#allowed-lateness [2] https://github.com/apache/flink/blob/master/flink-streaming-java/src/main/java/org/apache/flink/streaming/runtime/operators/windowing/WindowOperator.java Benchao Li <[hidden email]> 于2020年5月24日周日 下午9:56写道: > Hi, > 你理解的是正确的,进入哪个窗口完全看事件时间,窗口什么时候trigger,是看watermark。 > > smq <[hidden email]> 于2020年5月24日周日 下午9:46写道: > > > > > > 使用时间时间窗口处理关于数据延迟,加入允许延迟时间为1min,窗口大小是10min,那么在12:00-12:10这个窗口中,如果事件时间是在12:09:50这个数据在12:10:50这个数据到达,并且此时水位线刚好在12:09:50,那么这个延迟数据可以被处理,这个可以理解。 > > > > > 但是,假如第一个数据的事件时间刚好为12:00的,那么此时水位线应该在11:59,这个数据能进入12:00-12:10这个窗口被处理吗。按道理来说应该被正确处理。那么这样的话,进入窗口是按照事件时间,触发是按照水印时间。不知道这么理解对不对,这个问题想了很久。 > > > > -- > > Best, > Benchao Li > |
最近刚好看到张俊老师的 Flink 分享 [1],这个里面对你想了解的部分介绍得很详细,可以结合阅读(x)
Best, tison. [1] https://files.alicdn.com/tpsservice/73a1f1c404d2a658585cf4f4d86ef776.pdf smq <[hidden email]> 于2020年5月24日周日 下午10:25写道: > 恩恩,我是刚接触flink不久,所以很多地方没有很清楚,谢谢指点 > > > ---原始邮件--- > 发件人: "tison"<[hidden email]> > 发送时间: 2020年5月24日(周日) 晚上10:10 > 收件人: "user-zh"<[hidden email]>; > 主题: Re: 关于水位线Watermark的理解 > > > 整体没啥问题,但是我看你说【假如第一个数据的事件时间刚好为12:00的,那么此时水位线应该在11:59】,这个 Watermark 跟 > allowedLateness 没啥关系哈,是独立的逻辑。 > > 文档层面你可以看看[1],源码你可以看看[2]里面检索 allowedLateness > > Best, > tison. > > [1] > > https://ci.apache.org/projects/flink/flink-docs-stable/dev/stream/operators/windows.html#allowed-lateness > [2] > > https://github.com/apache/flink/blob/master/flink-streaming-java/src/main/java/org/apache/flink/streaming/runtime/operators/windowing/WindowOperator.java > > > > Benchao Li <[hidden email]> 于2020年5月24日周日 下午9:56写道: > > > Hi, > > 你理解的是正确的,进入哪个窗口完全看事件时间,窗口什么时候trigger,是看watermark。 > > > > smq <[hidden email]> 于2020年5月24日周日 下午9:46写道: > > > > > > > > > > > 使用时间时间窗口处理关于数据延迟,加入允许延迟时间为1min,窗口大小是10min,那么在12:00-12:10这个窗口中,如果事件时间是在12:09:50这个数据在12:10:50这个数据到达,并且此时水位线刚好在12:09:50,那么这个延迟数据可以被处理,这个可以理解。 > > > > > > > > > 但是,假如第一个数据的事件时间刚好为12:00的,那么此时水位线应该在11:59,这个数据能进入12:00-12:10这个窗口被处理吗。按道理来说应该被正确处理。那么这样的话,进入窗口是按照事件时间,触发是按照水印时间。不知道这么理解对不对,这个问题想了很久。 > > > > > > > > -- > > > > Best, > > Benchao Li > > |
Free forum by Nabble | Edit this page |