flink常见概念
作者:互联网
- Flink Application:一种java应用程序,主要通过main方法来提交一个或多个Flink Job.
- Flink Cluster:Flink集群是由至少一个Flink JobManager和一个或多个TaskManager进程组成的分布式系统。
- 事件(Event):可以当做流处理或批处理应用程序当中的输入或输出,事件在flink中是一种特殊类型的记录(Record)。
- 记录(Record):数据集或数据流的组成元素。Operator和Function接收record作为输入,并将record作为输出发出。
- 分区(Partition):按照一定规则,对数据流当中的记录进行拆分,构成的独立子集。
- 算子(Operator):逻辑数据流图的节点,对数据流当中的元素执行计算操作,通常由函数(Function)来具体执行计算逻辑。Flink中的Source和Sink是数据输入和数据输出的特殊算子。
- 算子链(Operator Chain):由至少两个连续的、且符合一定规则的算子串联在一起构成的操作,链中多个算子在同一分区中,算子之间直接进行数据传递,而无须序列化/反序列化或网络传输。
- Flink JobManager:是Flink Cluster的主节点。包含三个不同的组件:Flink Resource Manager、Flink Dispatcher、运行每个Flink Job的Flink JobMaster。
- Flink JobMaster:是Flink JobManager运行中的组件之一。负责监督单个作业Task的执行。
- Flink TaskManager:是Flink集群上实际进行数据处理的工作进程,并负责执行Task执行,集群上TaskManager之间可以相互进行数据通信。
- 托管状态(Managed State):描述了已在框架中注册的应用程序的状态。Flink会自动对托管状态执行持久化和重伸缩等事宜。
- 状态后端(State Backend):状态本质上是数据,数据是需要维护的,对于流处理程序,State Backend决定了其state是如何存储在每个TaskManager上。
- 任务(Task):代表物理数据流图上的节点,是数据流计算的基本工作单元。有Flink运行时来调度执行,task代表了一个算子或算子链的并行实例。
- 子任务(Sub-Task):负责处理数据流分区上的任务,子任务代表的是同一个算子或算子链具有多个并行的任务。
- 任务槽(Task Slot):它会独立抢占TaskManager节点上的计算资源,是TaskManager中最小的资源调度单位,并负责运行具体的子任务,任务槽的数量限制一个TaskManager进程中最多可以处理多少个子任务数。
标签:Flink,常见,flink,TaskManager,概念,任务,Task,算子,数据流 来源: https://blog.csdn.net/love20991314/article/details/121376112