1、基础知识
(1)、数据流上的有状态计算
(2)、框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。
(3)、事件驱动型应用,有数据流就进行处理,无数据流就不进行处理,就像挤牙膏一样。
(4)、无界数据流&&有界数据流:
其中,无界数据流就相当于水龙头,流的开始就是打开水龙头,但原则上,只要不关闭水龙头,水就会一直流下去,所以没有定义流的结束。
有界数据流,相当于给一个水桶中装满水,水桶底部存在一个小孔,流的开始就是水桶滴下第一滴水,流的结束就是滴下最后一滴水。
2、有状态流处理
举例:在一条马路上,每过一辆车,就会记录一次,在经过一段时间后,对记录的结果进行统计处理。
3、Flink特点
4、Spark和Flink的区别
两者最为本质的区别就是,Spark是批处理模式,Flink是流处理模式,
Spark Streaming:
(1)比如设计批次为3s,那么Spark将会积攒3s内的数据,最后统一对其进行处理。
(2)计算模型:微批次处理
(3)时间语义:处理时间
(4)窗口:少,不灵活
(5)状态:没有,需要跟外部系统进行交互。
(6)流式SQL:没有
Flink:
(1)与Spark不同的是,Flink是流处理模式,来一条数据,就处理一条数据。
(2)计算模型:流计算
(3)时间语义:事件时间、处理时间
处理时间:在处理数据时的现实时间
事件事件:数据本身产生的时间
举例:
例如,在23:59:59产生了一条数据,但因为网络延迟问题,导致计算引擎读取出现延迟,读取时间为0:00:01,综上所述,事件时间就是23:59:59,处理时间就是0:00:01
(4)窗口:多、灵活
(5)状态:有,可以自己维护管理数据。
(6)流式SQL:有
文章来源:https://www.toymoban.com/news/detail-738313.html
5、Flink分层API
文章来源地址https://www.toymoban.com/news/detail-738313.html
到了这里,关于1、Flink基础概念的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!