spark提交方式总结

参考传送门:https://blog.csdn.net/zpf336/article/details/82152286

spark入门之提交任务方式篇,spark的部署方式如下图:
spark提交方式总结_第1张图片当用/bin/spark-submit 提交任务时,
conf = SparkConf().setAppName(appName).setMaster(master)
sc = SparkContext(conf=conf)

一、Local模式:

单机版,不需要依赖Hadoop、Zookeeper等组件。

  • local: 所有计算都运行在一个线程当中,没有任何并行计算,通常我们在本机执行一些测试代码,或者练手,就用这种模式。
  • local[K]: 指定使用几个线程来运行计算,比如local[4]就是运行4个worker线程。通常我们的cpu有几个core,就指定几个线程,最大化利用cpu的计算能力
  • local[*]: 这种模式直接帮你按照cpu最多cores来设置线程数了。

提交示例:

/bin/spark-submit --master local[*] xxx.jar

4040:application的webUI的端口号

二、cluster模式

需要把cluster模式作为主节点参数递给spark-submit

1、standalone模式

独立集群模式,这种模式下,Spark会自己负责资源的管理调度。它将cluster中的机器分为master机器和worker机器,master通常就一个,可以简单的理解为那个后勤管家,worker就是负责干计算任务活的苦劳力,主从机需要无密码ssh登陆
8080:master的webUI;
7077:spark基于standalone的提交任务的端口号
8081:worker的webUI的端口号

提交示例:

--master spark://host:port

2、mesos模式

提交示例:

/bin/spark-submit --master mesos//host:port  xxx.jar

3、yarn模式

生产环境大多采用yarn模式,yarn模式又分为yarn cluster模式和yarn client模式:

  • yarn cluster: 这个就是生产环境常用的模式,所有的资源调度和计算都在集群环境上运行。
  • yarn client: 这个是说Spark Driver和ApplicationMaster进程均在本机运行,而计算任务在cluster上。

提交示例:

/bin/spark-submit --master yarn   xxx.jar

8088:yarn的webUI的端口号

你可能感兴趣的:(spark)