Flink基础理论

一、分布式大数据处理引擎Apache Flink

1、可以对有限数据流和无限数据流进行有状态计算

Flink基础理论

详细解释见下图

Flink基础理论

Apache Flink是一种统一的大数据分析和流计算、批计算及机器学习引擎。

2、*流和有界流

任何类型的数据都是作为事件流产生的,数据可以作为*或有界流处理。

(1)*流有一个开始但没有定义的结束。

不会在生成时终止并提供数据。必须持续处理*流,即必须在摄取事件后立即处理事件。无法等待所有输入数据到达,因为输入是*的,并且在任何时间点都不会完成。处理*数据通常要求以特定顺序(例如事件发生的顺序)摄取事件,以便能够推断结果完整性。

(2)有界流具有定义的开始和结束。

可以在执行任何计算之前通过摄取所有数据来处理有界流。处理有界流不需要有序摄取,因为可以始终对有界数据集进行排序。有界流的处理也称为批处理。

 

二、Flink的两种运算模型

1、流式计算、流计算(类比滚梯):流式计算、流计算(滚梯)

2、批处理/离线运算(类比直梯):在预先定义的时间内运行计算,当完成时释放计算机资源。

 

三、Flink生态的核心组件栈

Flink基础理论

四、Flink的外部生态

Flink基础理论

官方API下载地址:https://ci.apache.org/projects/flink/flink-docs-release-1.9/

补充API下载地址:https://github.com/apache/flink/tree/master/flink-connectors

基于flink的分布式数据同步工具:https://github.com/DTStack/flinkx