原来这是一个兼容性问题,集群是flink1.8.1,而cli和jobjar来自flink1.9.0。切换到同一个版本后,...
由前文我们知道,StreamGraph 表示一个流任务的逻辑拓扑,可以用一个 DAG 来表示(代码实现上没有一个 DAG 结构),DAG 的顶点是 StreamNode,边是 StreamEdge,边包含了由哪个 StreamNode 依赖哪个 StreamNode。本文我们主要介绍一个 StreamGraph 是如何转换成一个 JobGraph。
createJobGraph( packagedProgram, configuration, defaultParallelism, jobId); jobGraph.setAllowQueuedScheduling(true); jobGraph.setSavepointRestoreSettings(savepointRestoreSettings); return jobGraph; } catch (Exception e) { throw new FlinkException("Could not create the JobGraph from the provided user ...
1. WebMonitorEndpoint: 里面有大约六七十个handler,如果客户端使用fink run的方式来提交一个job,最终会由WebMonitorEndpoint的submitJobHandler来处理。 2. Dispatcher: 负责接收用户提交的jobGraph,然后启动Jobmaster。 3. ResourceManager: Flink集群的资源管理器,关于slot的管理和申请工作都由他负责。 TaskManager 主要职...
streamGraph.setJobName(jobName); //获取 jobGraph JobGraph jobGraph = streamGraph.getJobGraph(); jobGraph.setAllowQueuedScheduling(true); Configuration configuration = new Configuration(); configuration.addAll(jobGraph.getJobConfiguration());
简介:客户端提交作业图 作业图(JobGraph)是Flink的运行时所能理解的作业表示,无论程序通过是DataStream还是DataSet API编写的,它们的JobGraph提交给JobManager以及之后的处理都将得到统一。 客户端提交作业图 作业图(JobGraph)是Flink的运行时所能理解的作业表示,无论程序通过是DataStream还是DataSet API编写的,它们的Job...
该SubmitJobAndWait消息被JobClientActor接收后,最终通过调用tryToSubmitJob方法触发真正的提交动作。在tryToSubmitJob方法中,一个JobGraph的提交将会分为两步: 将用户程序相关的Jar包上传至JobManager; 给JobManager Actor发送封装JobGraph的SubmitJob消息;
Registering TaskManager with ResourceID 9acc0233-57a4-4d8b-8c97-0e17008e0dca (pekko://flink/user/rpc/taskmanager_0) at ResourceManager 2024-02-28 16:38:09.610 INFO 59419 --- [lt-dispatcher-7] o.a.f.r.dispatcher.StandaloneDispatcher : Received JobGraph submission 'evp job' (bbc2959a122...
JobGraph JobGraph是通过 Flink 各类API构建起来的一张任务执行图。 当 JobGraph 提交给 Flink 集群后,能够以 Local、Standalone、Yarn 和 Kubernetes 四种模式运行。 JobManager JobManager 相当于整个集群的 Master 节点,且整个集群有且只有一个活跃的 JobManager ,负责整个集群的任务管理和资源管理。
[可选] * --jobName 作业名称[可选] */ public static void main(String[] args) throws Exception { //step1 create execution environment | 创建 flink流处作业的运行环境 StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); //step2 initial environment's variables | ...