Flink
起源于一个叫作Stratosphere
的项目,它是由3所地处柏林的大学和欧洲其他一些大 学在2010~2014 年共同进行的研究项目,由柏林理工大学的教授沃克尔·马尔科(Volker Markl
) 领衔开发。2014年4月,Stratosphere
的代码被复制并捐赠给了Apache软件基金会,Flink就 是在此基础上被重新设计出来的。 在德语中,“flink
”一词表示“快速、灵巧”。项目的 logo 是一只彩色的松鼠,当然了, 这不仅是因为Apache
大数据项目对动物的喜好(是否联想到了Hadoop
、Hive
?),更是因为 松鼠这种小动物完美地体现了“快速、灵巧”的特点。关于 logo 的颜色,还一个有趣的缘由: 柏林当地的松鼠非常漂亮,颜色是迷人的红棕色;而Apache
软件基金会的logo
,刚好也是一 根以红棕色为主的渐变色羽毛。于是,Flink
的松鼠Logo
就设计成了红棕色,而且拥有一个漂 亮的渐变色尾巴,尾巴的配色与Apache
软件基金会的logo
一致。这只松鼠色彩炫目,既呼应 了Apache
的风格,似乎也预示着Flink
未来将要大放异彩。
从命名上,我们也可以看出Flink
项目对于自身特点的定位,那就是对于大数据处理,要 做到快速和灵活。
- 2014 年 8 月,Flink 第一个版本 0.6 正式发布(至于 0.5 之前的版本,那就是在 Stratosphere 名下的了)。与此同时Fink的几位核心开发者创办了Data Artisans 公司, 主要做Fink的商业应用,帮助企业部署大规模数据处理解决方案。
- 2014年12月,Flink项目完成了孵化,一跃成为Apache软件基金会的顶级项目。
- 2015年4月,Flink发布了里程碑式的重要版本0.9.0,很多国内外大公司也正是从这 时开始关注、并参与到Flink社区建设的。
- 2019年1月,长期对Flink投入研发的阿里巴巴,以9000万欧元的价格收购了Data Artisans 公司;之后又将自己的内部版本Blink开源,继而与8月份发布的Flink 1.9.0 版本进行了合并。自此之后,Flink 被越来越多的人所熟知,成为当前最火的新一代 大数据处理框架。
由此可见,Flink
从真正起步到火爆,只不过几年时间。在这短短几年内,Flink从最初的 第一个稳定版本0.9,到目前本书编写期间已经发布到了 1.13.0,这期间不断有新功能新特性 加入。从一开始,Flink就拥有一个非常活跃的社区,而且一直在快速成长。到目前为止,Flink 的代码贡献者(Contributors)已经超过800人,并且Flink已经发展成为最复杂的开源流处理 引擎之一,得到了广泛的应用。
根据Apache 软件基金会发布的2020 年度报告,Flink项目的社区参与和贡献依旧非常活 跃,在Apache旗下的众多项目中保持着多项领先:
- 邮件列表(Mailing List)活跃度,排名第一
- 代码提交(Commits)数,排名第二
- GitHub 访问量,排名第二
Flink 就像一列高速行进的列车,向我们呼啸而来,朝着未来更实时、更稳定的大数据处 理奔去。这辆通向未来的车,我们上车可以迟,但一定不要错过。 我们需要记住Flink的官网主页地址:
在Flink 官网主页的顶部可以看到,项目的核心目标,是“数据流上的有状态计算”(Stateful Computations over Data Streams
)。 具体定位是:Apache Flink是一个框架和分布式处理引擎,用于对无界和 有界数据流进行有状态计算。Flink 被设计在所有常见的集群环境中运行,以内存执行速度和 任意规模来执行计算。
这里有很多专业词汇,我们从中至少可以提炼出一些容易理解的信息:Flink 是一个“框架”,是一个数据处理的“引擎”;既然是“分布式”,当然是为了应付大规模数据的应用场景 了;
另外,Flink处理的是数据流。所以,Flink是一个流式大数据处理引擎。 而“内存执行速度”和“任意规模”,突出了 Flink 的两个特点:速度快、可扩展性强— —这说的自然就是小松鼠的“快速”和“灵巧”了。