大数据之Spark部署模式

文章目录

  • 前言
  • 一、Spark的部署模式
    • (一)Client模式
      • 1. Standalone集群下的Client模式
      • 2. Spark On Yarn集群下的Client模式
    • (二)Cluster模式
      • 1. Standalone集群下的Cluster模式
      • 2. Spark On Yarn集群下的Cluster模式
  • 总结


前言

#博学谷IT学习技术支持#
上篇文章介绍了PySpark的入门案例,大致了解了Spark的开发流程,本次继续探讨Spark的两种部署模式,Client模式和Cluster模式,让我们继续往下看。

一、Spark的部署模式

在Spark中,我们编写的代码成为Driver程序,Client模式和Cluster模式的区别在于Driver程序在哪里运行,Client模式时,Driver程序在提交任务的机器上运行,而Cluster模式则是将Driver提交到集群中运行。
Client和Cluster两种模式又分别存在于Standalone集群和Spark On Yarn集群,详情如下:

(一)Client模式

1. Standalone集群下的Client模式

Driver Program是一个JVM Process进程,该模式下,Driver程序运行在提交任务的主机上

大数据之Spark部署模式_第1张图片

2. Spark On Yarn集群下的Client模式

Spark On Yarn集群的Client模式与Standalone集群的Client模式相同,该模式下,Driver程序也是运行在提交任务的主机上
大数据之Spark部署模式_第2张图片

(二)Cluster模式

1. Standalone集群下的Cluster模式

Cluster模式时,Driver程序运行在集群从节点的任意一台Worker机器上
大数据之Spark部署模式_第3张图片

2. Spark On Yarn集群下的Cluster模式

该模式下,Driver程序运行在Yarn集群从节点的某一台机器上
大数据之Spark部署模式_第4张图片
开发环境下,部署模式一般设定为Client模式,而生产模式大多数都是设置为Cluster模式。


总结

Client模式与Cluster模式最主要的区别在于Driver程序运行在哪里,两种模式各有优缺点:
(1)Client模式下与集群的通信费用较高,但是执行结果可以显示在客户端,
(2)Cluster模式Driver运行在集群中,与集群的通信费用较低,但是执行结果不能显示在客户端,只能通过日志获取,由于该模式下,Driver程序由Yarn集群管理,如果运行过程中出现问题,Yarn集群会重启Driver程序。

你可能感兴趣的:(Spark,大数据,spark,hadoop)