瞌睡中的葡萄虎

博客园 首页 新随笔 联系 订阅 管理

在spark1.0中属性支持三种配置方式:

1、代码

在代码中构造SparkConf时指定master、appname或者key-value等

val conf = new SparkConf();
conf.setAppName("WordCount").setMaster(" spark://hadoop000:7077")
val sc = new SparkContext(conf)
val conf = new SparkConf();
conf.set("spark.executor.memory", "1g")
val sc = new SparkContext(conf)

2、命令行

在使用spark-submit或者spark-shell提交应用程序时,用命令行参数提交;

具体参数通过查看spark-submit --help 或者spark-shell --help得知;

spark-submit使用参见官方文档:http://spark.apache.org/docs/latest/submitting-applications.html

spark-submit \
--name SparkSubmit_Demo \
--class com.luogankun.spark.WordCount \
--master spark://hadoop000:7077 \
--executor-memory 1G \
--total-executor-cores 1 \
/home/spark/data/spark.jar \
hdfs://hadoop000:8020/hello.txt

注意:

1)此处虽然设置了name,但是如果在代码层面已经设置了setAppName("xxx"),那么此处的name是不生效的,因为代码层面设置参数的优先级大于命令行层面;

2)executor-memory是每个worker占用的,而executor-cores是所有worker一共占用;

3、配置文件

在spark1.0中使用conf/spark-defaults.conf配置文件设定,形如:

spark.master spark://hadoop000:7077
spark.local.dir /home/spark/spark_shuffle/    #配置spark shuffle数据存放路径
spark.executor.memory 1g

默认情况下spark-submit是会读取该配置文件,也可以通过参数设置读取其他配置文件,参见:spark-submit --properties-file

参数配置参见:http://spark.apache.org/docs/latest/configuration.html

 

注意三种属性设置的优先级:代码>命令行>配置文件

posted on 2014-06-24 10:42  瞌睡中的葡萄虎  阅读(1503)  评论(0编辑  收藏  举报