(九)Spark应用程序在不同部署模式下的运行方式

    我们知道Spark可以运行在不同模式下,这样的话当我们提交程序给Spark集群时就要修改相应的参数设置,在Spark学习的最后,我总结了几种常用模式下的运行命令(在Linux下运行)  PS:下文提到过的jar包是这样来的,我是在Windows下的eclipse中用scala语言编写的程序,所以我把程序导出为一个jar包,之后再传到Linux中相应的目录下
yarn模式:
./bin/spark-submit --class order_apriori.apriori\  //app路径
    --master yarn-client \  //运行模式
    --num-executors 3 \   //executor的个数
    --driver-memory 4g \  //主节点内存大小
    --executor-memory 2g \  //executor的内存大小
    --executor-cores 1 \  //executor的CPU的个数
    /home/hadoop/cd/spark_cd.jar \ //app所在jar包
local模式: 
./bin/spark-submit --class cd_yarn.WordCount\
    --master local[2] \
    --num-executors 3 \
    --driver-memory 4g \
    --executor-memory 2g \
    --executor-cores 1 \
     /home/hadoop/cd/spark_test.jar\
standalone模式:
./bin/spark-submit --class cd_yarn.WordCount\
    --master spark://192.168.137.5:7077 \//spark://主节点的外网IP:7077
    --num-executors3 \
    --driver-memory 512m \
    --executor-memory 216m \
    --executor-cores 1 \
    /home/hadoop/cd/spark_test.jar \
其中yarn模式和local模式可以不需要开启spark,standalone模式需要开启spark(因为standalone模式是Spark自身的资源管理方式),此外yarn和local模式允许的内存比standalone模式要大,因此可能性能要好点
此外,mesos模式我没有运行过,因此也不是很清楚,就省略不讲了。。。。。
最后的最后,用一张图将我所理解的Spark的架构表示出来,由于画图水平有限,因此该图不能将我所有的理解很完美地表现出来,只有待日后进行完善了

其中DAGScheduler部分,TaskScheduler部分,BlockManager部分指的就是前面讲述这三者的内容时所画的图,因为能力有限,所以不能将其一一画出,不过借助前面的内容加上此图,应该可以对Spark的架构进行比较基础的理解了吧
Spark这部分基本上讲完了,下篇博文中我将进行一些收尾工作,当做是对自己学习Spark的一个总的回顾吧。。。
未完待续。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值