spark 笔记stand alone 和yarn-cluster的部分区别

 公司最近的spark集群由原来的standalone迁移到spark on yarn了,在迁移相关的程序时,发现调整还是有一些的,以下分别是两个版本提交的部分shell命令,从命令可以看出其区别,这个区别主要是spark on yarn的工作方式不太一样,造成提交的方式也不太一样。

    standalone方式的脚本为:

[java]  view plain  copy
  1. spark-submit --class com.bg.tools.WapJoinUA\  
  2.       --driver-memory 80g \  
  3.       --executor-memory 60g \  
  4.       --total-executor-cores 256 \  
  5.       ${COMMON_PATH}/jars/${APP_JAR} \  
  6.       ${HDFS_UATAG_INPUT} ${HDFS_INSTANCE_INPUT} ${TAGS_FILTER_FILE} ${HDFS_OUTPUT} 100   


    yarn-cluster方式的脚本为:

[java]  view plain  copy
  1. spark-submit --queue dc  
  2.         --class bg.tools.Instance \  
  3.         --master yarn-cluster \  
  4.         --executor-memory 30g \  
  5.         --driver-memory 10g \  
  6.         --num-executors 200  
  7.         --executor-cores 16 \  
  8.         ${COMMON_PATH}/jars/${APP_JAR} \  
  9.          ${HDFS_INSTANCE_INPUT} ${HDFS_OUTPUT}  

    碰到的问题其中一个就是文件读写的方法不一致, standalone由于driver是固定的, 读取文件类似本地读取,但是yarn-cluster的driver是yarn进行分配的,需要把文件使用--files进行上传,而且在读取文件的时候,应该只能使用文件的名称而不是包含全部路径的文件名,不然会抛出文件找不到的异常,另外比较有用的是这个选项:--conf "spark.hadoop.mapreduce.input.fileinputformat.split.minsize=1073741824" 一般hadoop默认的块是64M,这个可以调整split的大小,以免切分成太多小文件。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值