如果你还不了解 Flink 是什么,可以查看我之前的介绍文章:Flink 介绍
如果你想跟着我一起学习 flink,欢迎查看订阅专栏:Flink 专栏
这篇文章列举了 Flink 每次发布的版本中的重要特性,从中可以看出 Flink 是如何一步一步发展到今天的。
Flink 的前身是 Stratosphere 项目,最初由柏林工业大学的研究团队开发。Stratosphere 项目旨在实现高性能的大数据处理和分析。
0.6.0
发布于 2014 年,这是在 Apache 内部的第一个版本,名称为 Flink。具有以下特点:
- 定义:ApacheFlink 是用于集群的通用数据处理引擎。
- 作业通过 Flink 的运行时引擎执行。
- 数据存储在 Hadoop HDFS 中
- 支持的资源管理器:standalone、Hadoop YARN
- 支持的编程语言:Java、Scala
0.7.0
发布于 2014 年,引入下面的新特性:
- FlinkStreaming:提供了一个 Java API,可以实时处理流数据源(例如Apache Kafka、Apache Flume等)。
- 流式 Scala API:现在 Scala 和 Java 具有相同的语法和 Transformation,并在之后的版本中保持同步。
0.8.0
发布于 2015 年,引入下面的新特性:
- 扩展文件系统:现在可以在 Flink 中使用 Hadoop 支持的所有文件系统
- 支持窗口:引入了新的窗口 API,用于创建窗口、删除窗口元素等
- hadoop 2.2.0+ 作为默认的依赖
0.9.0
发布于 2015 年,引入下面的新特性:
- 引入 Table API:https://nightlies.apache.org/flink/flink-docs-release-0.9/libs/table.html
- 引入 Gelly 进行图处理:https://flink.apache.org/2015/08/24/introducing-gelly-graph-processing-with-apache-flink/
- 引入机器学习库:https://nightlies.apache.org/flink/flink-docs-release-0.9/libs/ml/
- 引入 Akka 框架来作为 Flink 的 RPC 系统:http://akka.io/
- 为流处理引入精确一次(exactly-once)语义保证。
0.10.0
发布于 2015 年,引入下面的新特性: