Spark在Client与在集群运行的区别

本文对比了YARN的两种运行模式:yarn-cluster与yarn-client。前者适用于生产环境,driver运行于ApplicationMaster中;后者适合开发调试,driver运行于客户端。详细分析了两种模式下ApplicationMaster的作用及运行机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

yarn-cluster适用于生产环境,yarn-client适用于交互和调试,也就是希望快速看到application的输出。

Application Master:在yarn中,每个Application实例都有一个Application Master进程,它是Application启动的第一个容器,负责和Resourcemanager打交道,并请求资源。获取资源之后告诉NodeManager为其启动Container。
深层次分析:yarn-cluster和yarn-client模式的区别其实就是Application Master进程的区别,yarn-cluster模式下,driver运行在AM中,它负责向yarn申请资源,并监督作业的运行状况。当用户提交完了作业之后就可以关掉client,作业会继续在yarn上运行。yarn-cluster不适合运行交互类型的作业。而yarn-client模式下,Application Master仅仅向YARN请求executor,client会和请求的container通信来调度他们工作,也就是说Client不能离开。看下下面的两幅图应该会明白(上图是yarn-cluster模式,下图是yarn-client模式)
在这里插入图片描述
在这里插入图片描述
 总结来说:yarn-client 与yarn-cluster的区别就在于driver所在的位置,yarn-client driver运行在client端 yarn-cluster driver 运行在Application Manager内 client模式适合开发 cluster模式 适合正式环境

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值