(1)flink-前言
不可置否,大数据时代已然来临,5G浪潮,智慧城市,智慧生活甚至智慧餐厅…当今时代的数据产生的越来越快、数据量越来越大…人们在某些场景对数据处理的实时性要求越来越高,例如:车辆报警、实时风控、实时推荐系统等等…
传统的批处理方式和早期的流式处理框架因其自身的局限性,难以在延迟性、吞吐量、容错能力,以及使用便捷性等方面满足业务日益苛刻的要求。
在这种形势下,Flink 由于其独特的天然流式计算特性和更为先进的架构设计,极大地改善了以前的流式处理框架所存在的问题,在流式计算框架中,脱颖而出,一步步发展,现今已成为了流式计算中顶级的一个框架。
下边,是一个flink全球使用分布图…
可能有小伙伴疑惑,为啥flink在中国这么火呢???请看下方,flink的前世今生…
(2)flink-前世今生
Flink 诞生于欧洲的一个大数据研究项目 StratoSphere。该项目是柏林工业大学的一个研究性项目,一开始,Flink是做 Batch (微批)计算的,但是在 2014 年, StratoSphere
里面的核心成员孵化出 Flink,并在同年将 Flink 捐赠 Apache,后来flink成为了 Apache 的顶级大数据项目,同时 Flink 计算的主流方向被定位为 Streaming, 即用流式计算来做所有大数据的计算!
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UVFPy09z-1617195344661)(C:\Users\leile\AppData\Roaming\Typora\typora-user-images\image-20210330224214855.png)]
2014 年 Flink 作为主攻流计算的大数据引擎开始在开源大数据行业内崭露头角。
flink不仅是一个高吞吐、低延迟的计算引擎,同时还提供很多高级的功能。比如它提供了有状态的计算,
支持状态管理,支持强一致性的数据语义以及支持基于Event Time(事件时间)的WaterMark(水位线 可一定程度上解决数据延迟或乱序问题。
2015 年阿里巴巴开始使用 Flink 并持续贡献社区,同时阿里内部还基于Flink做了一套Blink框架…
2019年1月8日,阿里巴巴以 9000 万欧元(7亿元人民币)收购了创业公司Data Artisans (开源数据流处理技术Apache Fink的几位开发者于2014年创办 的数据处理创业公司),从这一刻起,Flink成为了国内的大数据流式处理框架。
阿里的数据量以及实时数据要求的严苛性,国内互联网公司有目共睹,其收购flink以及大面积使用flink进行实时计算,为我们积累大量的经验以及技术沉淀,引起了国内的热潮!!!!!
(3)flink的具体使用场景
如前言所说,现今很多需求要求对海量数据做出实时性处理,因为,flink可以在 实时数仓
、实时计算分析
、实时监控
、实时报表
等等这些地方,大展拳脚,而正如那flink响当当的一惊雷…实时即未来!!!
(4)为什么最新的Flink1.12开始流批一体化?
因为在某些场景,用户的业务逻辑在批处理和流处理之中往往是相同的,但我们的业务逻辑用于批处理和流处理的两套计算引擎是不同的。例如 流式计算用flink ,批处理用spark…这样的请款下,由于数据界限问题,导致同一个逻辑需要编写两套代码.这会给开发运维带来一额外的负担。
阿里巴巴的商品数据处理就经常需要面对增量和全量两套不同的业务流程问题,所以阿里就在想,我们能不能有一套统一的大数据引擎技术,用户只需要根据自己的业务逻辑开发一套代码。这样在各种不同的场景下,不管是全量数据还是增量数据,亦或者实时处理,一套方案即可全部支持,这就是阿里选择 Flink 的背景和初衷(且阿里自己也基于flink实现了一个Blink框架)
为了解决相同业务逻辑处理,由于数据界限不同,编写两套代码的情况,flink 也进行了改造迭代!!!
flink1.12.0,是flink一个巨大的跨越!
由单纯的流式计算框架,变为了流批一体框架!其会根据流的界限,自动进行流/批数据转换。