科多大数据培训
全国24小时免费热线
15328019568
联系QQ
3048661160
开班时间
当前位置:首页 > 学习资讯 >

大数据开发spark培训学习之提交任务与参数解释

今天的小课堂科多大数据带大家来学习一下spark之提交任务与参数解释。 配置与YARN进行关联 第一个,基于standalone 集群模式提交 这里使用的client模式,还可以使用另外一种模式cluster

今天的小课堂科多大数据带大家来学习一下spark之提交任务与参数解释。
配置与YARN进行关联

第一个,基于standalone 集群模式提交

这里使用的client模式,还可以使用另外一种模式cluster

./bin/spark-submit \ --class spark_streaming.SparkStreaming_first \ --master spark://master:7077 \ --deploy-mode client \ --supervise \ --executor-memory 1G \ --total-executor-cores 1 \ /home/hadoop/spark.jar

第二个,基于YARN 集群模式提交

这里使用的client模式,还可以使用另外一种模式cluster

./bin/spark-submit \ --class spark_streaming.SparkStreaming_first \ --master yarn \ --deploy-mode client \ --executor-memory 1G \ --num-executors1 \ /home/hadoop/spark.jar

spark-submit 是最常用来提交任意 Spark 任务的客户端工具,客户实现自己的业务打包成 jar 包并通过该工具提交任务在集群中运行。 spark-submit 需要指定为 master 参数为 yarn-client 或 yarn-cluster 模式,若不指定该参数为单机版模式。根据实际业务需求和集群资源情况指定单个执行器所占 CPU、单个执行器所占内存和执行器个数。直接输入 spark-submit 可以看到其所有参数:

常用启动参数:

--master yarn-client (启动并以集群模式提交任务,不设置为 local 模式非集群) --driver-memory 10G (Driver 内存,每个任务都会启动一个 driver)

--executor-memory 85G (每个 executor 的内存)

--executor-cores 26 (每个 executor 的 Vcore)

--num-executors 16 (集群内启动多少 executor)

启动参数配置原则:

driver-memory 这个不需要太大一般 4-10g 足够

executor-memory 尽可能利用集群空闲资源(可以理解为 yarn 上物理内存减去其他组件需要使用以外的剩余内存尽量分配进来。)

executor-cores 依据每个 task 所需的内存来调整 core 数量不同任务所需要内存不同,假设 executor-memory 为 80G,每个 task 内存需要 4G 则 executor-cores 可以设置为 20;注意:Spark 任务中每一个 container 处理一个 task,每一个 container 含有至少一个 core 以及一部分内存,因此由上例可以得出每一个 container 含有 1 个 core 和 85/26 G 的内存; container 总数在 26*16 个也就是说在这个启动参数中 spark 的任务能同时并发 26*16 个 task。

num-executors 可以动态调整一般为计算节点的整数倍。

最新资讯更多+
内容推荐更多+
在线课堂
猜你喜欢