spark运行方式及其常用参数

本文将介绍spark的几种运行方式,及常用的参数

yarn cluster模式

例行任务一般会采用这种方式运行

指定固定的executor数

作业常用的参数都在其中指定了,后面的运行脚本会省略

spark-submit \
    --master yarn-cluster \  
    --deploy-mode cluster \                  #集群运行模式
    --name wordcount_${date} \               #作业名
    --queue production.group.yanghao \       #指定队列
    --conf spark.default.parallelism=1000 \  #并行度,shuffle后的默认partition数 
    --conf spark.network.timeout=1800s \
    --conf spark.yarn.executor.memoryOverhead=1024 \   #堆外内存
    --conf spark.scheduler.executorTaskBlacklistTime=30000 \
    --conf spark.core.connection.ack.wait.timeout=300s \
    --num-executors 200 \                   #executor数目 
    --executor-memory 4G \                  #executor中堆的内存
    --executor-cores 2 \                    #executor执行core的数目,设置大于1   
    --driver-memory 2G \                    #driver内存,不用过大   
    --class ${main_class} \                 #主类
    ${jar_path} \                           #jar包位置
    param_list \                            #mainClass接收的参数列表
动态调整executor数目
spark-submit \
    --master yarn-cluster \
    --deploy-mode cluster \
    --name wordcount_${date} \
    --queue production.group.yanghao \
    --conf spark.dynamicAllocation.enabled=true \     #开启动态分配
    --conf spark.shuffle.service.enabled=true \       #shuffle service,可以保证executor被删除时,shuffle file被保留
    --conf spark.dynamicAllocation.minExecutors=200 \ #最小的executor数目
    --conf spark.dynamicAllocation.maxExecutors=500 \ #最大的executor数目
    --class ${main_class} \
    ${jar_path} \
    param_list

yarn client模式

边写脚本,边在集群上运行。这样调试会很方便

spark-shell \
    --master yarn-client \    
    --queue production.group.yanghao \      #指定队列
    --num-executors 200 \                   #executor数目 
    --executor-memory 4G \                  #executor中堆的内存
    --executor-cores 2 \                    #executor执行core的数目,设置大于1   
    --driver-memory 2G \                    #driver内存,不用过大   
    --jars ${jar_path}                      #jar包位置

yarn cluster模式 vs yarn client模式

yarn cluster模式:spark driver和application master在同一个节点上
yarn client模式:spark driver和client在同一个节点上,支持shell
这里写图片描述

参考

http://stackoverflow.com/questions/21138751/spark-java-lang-outofmemoryerror-java-heap-space

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值