这是我在看了尚硅谷的Flink视频之后自己的总结,希望对大家有所帮助!!!
1、Flink的概念
是一个框架和分布式处理引擎,用于对无界和有数据流进行状态计算,主要应用于数据是实时更新的,进行实时分析。
2、Flink特点
3、Flink框架处理流程
事件驱动型应用:来一个事件,我这边就跟着响应。
4、Flink的应用场景
5、为什么选择Flink
批处理:就是把数据攒着,让数据攒够一批之后,再进行处理
流处理:来一个数据,处理一个,来一个处理一个。 (flink)
5.1、传统数据结构架构
事物处理:来一个事件,就进行处理。(OLTP)
分析处理:适合数据量比较大的情况,但不是适合实时处理。(OLAP)
5.2有状态的流式处理
把之前传统数据结构一来一回的处理方式,变成了一个流来进行,本地状态也就相当于把数据存储到了内存中。 为了发生故障能够正常的恢复。 可以不定时的或定期的对本地状态做一个存盘进行保存。进行远程持久化存储。
5.3、流处理的演变
lambda比较麻烦,因为你要实现一个需求, 却要维护两套系统。本身批处理个流处理的两个API是不一样的,意思就是同一个开发,用了两个处理器,在之后的项目如果有了更大的扩展,此时就需要再次进行两个处理器的使用。虽然效果比较好,但是随着演变,也不再使用了。当然有的公司还在使用。
5.4、新一代处理器-flink
也有把他们叫做kappa架构的。
6、流处理的应用
事件驱动型应用:一般都是与事件日志(kafka)。
数据分析型应用:把数据读取之后,进行存储,然后再进行处理,比如sql等等,和批处理一个道理。
数据管道型应用:就比如从一个管道进去进行出俩,从另外一个管道出来。
7、Flink的分层API
8、Flink和Spark的区别
spark的底层基于批处理实现
flink基于流处理实现,相当于代码不动,数据动,具有流动性,有充分的时间去做事情。
接下来继续为大家更新
可以先点个关注哟!!!
让小编我更有动力