栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

对比Flink作业提交的几种方式

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

对比Flink作业提交的几种方式

目录

1. Session Mode

1.1 流程

1.2 优缺点总结

1.3 适用场景

2.Per-Job mode

2.1 流程

2.2 优缺点总结

2.3 适用场景

3. Session mode VS Per-Job mode

4. Application mode(flink 1.11+版本)


​​​​​​​

1. Session Mode

1.1 流程

(1)session mode会预分配资源,根据指定资源实现创建一个flink集群常驻与Yarn中,并启动一个JobManager和若干TaskManager。

(2)这时可以直接提交作业,节省了申请和分配资源的开销

1.2 优缺点总结

(1)该模式下所有job共享这些固定的资源,而且作业之间不能隔离,会出现资源竞争的情况。

(2)当一个TM发生故障,那么所有在这个节点上的job都会失败。

(3)当提交的作业越来越多时,JM的负载会越来越高。

1.3 适用场景

适合部署一些运行时间短,对延迟性要求不高的任务。


2.Per-Job mode

2.1 流程

每个Job提交到Yarn上,都会形成独立的flink集群,即拥有自己独立的JobManager和TaskManager。

2.2 优缺点总结

(1)由于提交作业时需要单独申请资源,因此启动时延迟会高一些。

(2)作业之间资源是独立的,也即Job之间是独立的互不影响,一个Job的TaskManager故障,不会影响其他Job。

(3)JM也是独立的,因此JM负载不会很高。

(4)Job完成后,会释放资源。不像Session mode,资源是常占的。

2.3 适用场景

Per-Job一般适用长时间运行的作业,通常生产环境可以使用这种模式。


3. Session mode VS Per-Job mode

以上两种模式,都需要一个客户端入口向Yarn发起提交请求,用来执行作业。在main方法执行之前,直到evn.execute(),客户端还需要做一些工作:

(1)获取作业相关依赖

(2)分析执行环境,并获取逻辑计划,通常讲就是从StreamGraph到JobGraph生成的过程。

(3)将依赖和JobGraph上传到集群。

如果在初始化分析阶段和获取依赖阶段,如果依赖东西非常多,那么就会占用更多带宽;

如果业务执行计划非常复杂,那么在解析转换逻辑计划,生成JobGraph时就需要更多CPU和内存,考虑到这种情况,如果在客户端做大量准备工作,客户端资源可能会成为瓶颈。

Session mode 和 Per-Job mode都存在这种情况,于是出现了下面的第3中mode,即Application mode.


4. Application mode(flink 1.11+版本)

(1)针对在客户端大量的准备工作,client所做的一些事情被转移到JM中,也就是说程序主方法在集群中执行,入口点在ApplicationClusterEntryPoint。client只负责提交即可。

(2)针对大量依赖占用带宽的问题,可以将flink作业依赖的jar包提前上传至hdfs即可,然后通过yarn.provided.lib.dirs来指定依赖存储的路径即可,这样就会从hdfs上拉取,NodeManager也会缓存一些依赖,进一步加速作业提交。

# 使用Application mode提交作业的demo
bin/flink run-application -t yarn-application  
-Djobmanager.memory.process.size=2048m  
-Dtaskmanager.memory.process.size=4096m 
-Dtaskmanager.numberOfTaskSlots=2  
-Dparallelism.default=10  
-Dyarn.application.name="MyFlinkApp"  
-Dyarn.provided.lib.dirs="hdfs://myhdfs/flink-common-deps/lib;hdfs://myhdfs/flinkcommon-deps/plugins"

以上内容是在学习《大数据技术架构手册(公众号:进击吧大数据)编制》一书时做的总结,感谢知识分享。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/691487.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号