自学内容网 自学内容网

Flink中常见问题总结

1、什么是侧道输出流,有什么用途

测到输出流就是将一个流中的数据按照指定规则进行分流处理;

作用:一方面可以分流,另一方面就是可以通过侧输出机制将严重迟到的数据单独放入一个datastream中供后续处理

2、Flink 中两个流如何合并为一个流

(1)flink中有两种方式可以将两个流合并为流,分别是union和connect;

(2)两者的区别在于union只能合并同种类型的流,而connect可以和并不同类型的流,且两个流之间相互独立,流中的数据也用的是不同的处理逻辑。

3、Flink 中两个流如何 join

(1)两个流jion的方式分为三种:join、coGroup、intervalJoin;

(2)他们的区别在于:

join只能实现内连接的效果;

coGroup比join更加灵活,它可以按照指定的逻辑实现内连接、左连接、右连接,但与join都是基于窗口的;

intervalJoin跟窗口无关,但必须先分组,可以实现点对线的连接,是一个流上某一时刻的数据与另一个流上某一段范围数据的join。

4、Flink 中都有哪些 window,什么是滑动,滚动窗口

(1)有countWindow、timeWindow、会话窗口;

(2)滑动窗口就是每过多长时间就统计比这个时间长的时间段的数据;滚动窗口是指每过多长时间就统计多长时间的数据。

5、flink 中都有哪些时间语义,对于 event_time 中数据迟到的处理(数据乱序)

(1)有eventTime(事件(数据)时间)、IgestionTime(摄入时间)、Processing Time(处理时间);

(2)当数据出现短期迟到时,可以通过设置水印(watermark)延迟窗口关闭的时间,当使用event Time时就必须使用watermask,当数据出现较严重迟到时,可以设置allowedLateness在水印基础上再次延迟窗口关闭的时间,当数据出现严重迟到时,可以将数据通过侧道输出机制单独放入一个dataStream中供后续处理。


原文地址:https://blog.csdn.net/weixin_64860388/article/details/144334241

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!