Flink基础理论
一、分布式大数据处理引擎Apache Flink
1、可以对有限数据流和无限数据流进行有状态计算
详细解释见下图
Apache Flink是一种统一的大数据分析和流计算、批计算及机器学习引擎。
2、无界流和有界流
任何类型的数据都是作为事件流产生的,数据可以作为无界或有界流处理。
(1)无界流有一个开始但没有定义的结束。
不会在生成时终止并提供数据。必须持续处理无界流,即必须在摄取事件后立即处理事件。无法等待所有输入数据到达,因为输入是无界的,并且在任何时间点都不会完成。处理无界数据通常要求以特定顺序(例如事件发生的顺序)摄取事件,以便能够推断结果完整性。
(2)有界流具有定义的开始和结束。
可以在执行任何计算之前通过摄取所有数据来处理有界流。处理有界流不需要有序摄取,因为可以始终对有界数据集进行排序。有界流的处理也称为批处理。
二、Flink的两种运算模型
1、流式计算、流计算(类比滚梯):流式计算、流计算(滚梯)
2、批处理/离线运算(类比直梯):在预先定义的时间内运行计算,当完成时释放计算机资源。
三、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