Flink应用开发简介
Flink是一个批处理和流处理结合的统一计算框架,其核心是一个提供了数据分发以及并行化计算的流数据处理引擎。
Flink最适合的应用场景是低时延的数据处理(Data Processing)场景:高并发pipeline处理数据,时延毫秒级,且兼具可靠性。
Flink整个系统包含三个部分:
- JobManager
Flink系统的管理节点,管理所有的TaskManager,并决策用户任务在哪些Taskmanager执行。JobManager在HA模式下可以有多个,但只有一个主JobManager。
Flink系统提供的关键能力:
Flink DataStream API提供Scala和Java两种语言的开发方式,如表1所示。
功能 |
说明 |
---|---|
Scala API |
提供Scala语言的API,提供过滤、join、窗口、聚合等数据处理能力。由于Scala语言的简洁易懂,推荐用户使用Scala接口进行程序开发。 |
Java API |
提供Java语言的API,提供过滤、join、窗口、聚合等数据处理能力。 |
有关Flink的详细信息,请参见:https://flink.apache.org/