环境:Spark 1.3.0
由于搭建的spark 是standalone模式,因而应用使用的内存和cpu数应由spark-env.sh的环境变量或应用程序的控制参数spark.executor.memory和spark.cores.max,不然应用将占用所有cpu数并使用其它应用无法获取cpu数,并且spark-submit中的控制参数(total-executor-cores, executor-memory无效。
环境变量:
SPARK_WORKER_MEMORY=”50g”
SPARK_WORKER_CORES=22
应用程序:
new SparkConf().set(“spark.executor.memory”, “5g”).set(“spark.cores.max”, “5”)