摘要:
一、JobManager启动过程Dispatcher启动解析 在上两篇随笔中介绍了Zookeeper Curator框架Leader选举过程和ClusterEntrypoint 3大核心组件基本功能及WebmonitorEndpoint、ResourceManager的启动过程。本篇随笔介绍核心组件 阅读全文
摘要:
一、JobManager启动过程ResourceManager启动解析 在上一篇随笔中介绍了Zookeeper Curator框架Leader选举过程和ClusterEntrypoint 3大核心组件基本功能及WebmonitorEndpoint的启动过程。本篇随笔介绍核心组件ResourceMan 阅读全文
摘要:
一、JobManager三大组件功能简介 JobManager是Flink系统master节点的逻辑称呼,不同的部署模式有不同的实现类,对于Flink On Yarn下Application模式,其实现类是YarnApplicationClusterEntryPoint。JobManager由三个核 阅读全文
摘要:
一、Flink On Yarn客户端提交三种方式 1、方式一、Per-Job 模式 作业提交命令行方式:./bin/flink run -t yarn-per-job -d -ynm FlinkAppName -Dyarn.application.name=FlinkRetention -c com 阅读全文
摘要:
一、ExecutionGraph介绍介绍 ExecutionGraph是调度Flink作业执行的核心数据结构,包含了作业中所有并行执行的Task信息、Task之间的关联关系、数据流转关系。相比于StreamGraph、JobGraph,ExecutionGraph加入了并行度的概念,成为真正可调度的 阅读全文
摘要:
一、JobGraph介绍 上一篇随笔中解析了StreamGraph的生成过程,Flink应用转换成StreamGraph后紧接着向JobGraph转换。在转换过程中1个或多个符合条件的StreamNode会生成一个JobVertex,每一个JobVertex就是JobGraph的节点。JobVert 阅读全文
摘要:
一、StreamGraph介绍 在一个Flink流式应用中每个DataStream API调用都会被转换为一个Transformation,等StreamExecutionEnvironment.execute()方法开始执行时,每个Transformation会映射为一个StreamGraph。S 阅读全文
摘要:
一、数据分区概念 对分布式计算引擎来说,数据分区的主要作用是将现环节的数据进行切分,交给下游位于不同物理节点上的Task计算。 二、Flink数据分区接口体系 1、顶层接口ChannelSelector (1).setup()方法设置下游算子的通道数量。从该接口中可以看到,算子里的每一个分区器都知道 阅读全文
摘要:
一、时间类型解析 1、处理时间(Processing Time):处理时间是指数据被计算引擎处理的时间,以各个计算节点的本地时间为准。 2、事件事件(Event Time):事件时间是指数据发生的时间,通常产生于数据采集设备中,与Flink计算引擎本地时间无关。因受网络延迟、数据乱序、背压等影响,事 阅读全文
摘要:
一、数据流元素前置介绍 数据流元素在Flink中叫做StreamElement,主要有4种实现类。在执行层面上这4种数据流元素都被序列化成二进制混合数据流,在算子中将混合数据流中的数据流元素反序列化出来,根据其类型分别进行处理。4种实现类如下: 1、数据记录StreamRecord,代表数据流中的业 阅读全文